code smell,
59 , 65,
193,
301collectstatic,
127 – 129comments,
15,
86commits,
18,
24,
30 , 110configuration management tools,
167(see also Fabric)
context managers,
177continuous integration (CI),
365 – 385,
cdviiadding required plugins,
368best practices,
385configuring Jenkins,
367debugging with screenshots,
374 – 378installing Jenkins,
365JavaScript tests,
381 – 384project setup,
369Selenium race conditions,
378 – 381for staging server test automation,
384virtual display setup,
372 – 374contracts, implicit,
356cookies,
282,
304Cross-Site Request Forgery (CSRF) error,
53CSS (Cascading Style Sheets) framework,
116 , 118(see also Bootstrap)
where Bootstrap won’t work,
126cutting corners,
cdviiD
data migrations,
428 – 431database deployment issues,
132database location,
141De-spiking,
251,
285 – 293debugging,
21,
52,
249Ajax,
249Django debug screen,
146improving error messages,
57in continuous integration,
374 – 378in JavaScript,
261staging for,
306 – 310switching DEBUG to false,
151screenshots, for debugging,
374 – 378dependencies
and deployment,
132mocking out,
278virtualenv,
142deployment,
411adjusting database location,
141automating,
152 – 155,
157 – 166danger areas,
132dependencies and,
132deploying to live,
163further reading,
166key points,
155to live,
237migrate,
147Nginx,
144 – 146overview,
152production-ready,
148 – 152vs. provisioning,
140sample script,
158 – 161saving progress,
156staging,
237,
427virtualenvs,
142 – 144deployment testing,
131 – 156domain name for,
135manual provisioning for hosting,
136 – 140overview,
133design (see layout and style)
Django,
4admin site,
434apps,
22authentication in,
245 – 248,
282class-based views,
413 – 421(see also class-based views)
collectstatic,
127 – 129custom user model,
293 – 297debugging screen,
146,
151field types,
64foreign key relationship,
99forms in (see forms)
FormView,
414functional tests (FT) in (see functional tests/
testing (FT))
and Gunicorn,
148LiveServerTestCase,
77management commands,
311 – 314,
320migrations,
62 – 64,
71 – 74,
237model adjustment in,
97model-layer validation,
175 – 187Model-View-Controller (MVC),
24notifications,
433Object-Relational Mapper (ORM),
60 – 64POST requests (see POST requests)
as PythonAnywhere app,
410startproject,
6static files in,
122static live server case,
124template inheritance,
120 – 121444
|
Index