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 The Django template language Introduction to class-based viewsForm handling with class-based viewsBasic examplesSubclassing generic views The CommandsWorkflowMigration filesConsiderations when removing model fieldsSquashing migrationsSupporting multiple Django versions Using files in modelsFile storage Writing and running testsAdvanced testing topics OverviewUsage Setting up the cacheThe per-view cacheThe low-level cache APIUsing Vary headersOrder of MIDDLEWARE The decoratorUsing the decorators with other HTTP methods Cryptographic signing Using the low-level API Quick examplesend_mass_mail()Preventing header injectionEmail backends Internationalization and localization Definitions A quick logging primerDjango’s logging extensions Pagination ExampleUsing Paginator in a view Cross site scripting (XSS) protectionSQL injection protectionSSL/HTTPSReferrer policyUser-uploaded content Performance and optimization General approachesUnderstanding lazinessHTTP performanceUsing different versions of available software Serializing dataSerialization formats Django settings Designating the settingsUsing settings in Python codeSecurityCreating your own settings Signals Defining and sending signals System check framework External packages Comments