Using Django Install PythonGet your database running Models and databases Making queriesSearchPerforming raw SQL queriesMultiple databasesDatabase access optimizationExamples of model relationship API usage URL dispatcherView decoratorsDjango shortcut functionsMiddleware Working with forms Django’s role in formsBuilding a formWorking with form templates Templates Support for template engines Introduction to class-based viewsForm handling with class-based viewsBasic examplesSubclassing generic views The CommandsWorkflowMigration filesReversing migrationsData MigrationsSerializing values Managing files The File object Testing in Django Testing tools User authentication in Django Installation Django’s cache framework The per-site cacheTemplate fragment cachingDownstream cachesControlling cache: Using other headers Conditional View Processing Shortcuts for only computing one valueComparison with middleware conditional processing Protecting the SECRET_KEY Sending email send_mail()mail_admins()ExamplesThe EmailMessage classConfiguring email for development Overview Logging Using loggingDjango’s logging extensions The Paginator classPaginating a ListView Security in Django Cross site request forgery (CSRF) protectionClickjacking protectionHost header validationSession securityAdditional security topics IntroductionCachingDatabasesTemplate performance Serializing Django objects Deserializing dataNatural keys The basicsDefault settingsAltering settings at runtimeAvailable settingsUsing settings without setting Listening to signalsDisconnecting signals Writing your own checks LocalflavorFormtools Async viewsAsync adapter functions