index.txt 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. .. _index:
  2. ====================
  3. Django documentation
  4. ====================
  5. .. rubric:: Everything you need to know about Django.
  6. Getting help
  7. ============
  8. Having trouble? We'd like to help!
  9. * Try the :doc:`FAQ <faq/index>` -- it's got answers to many common questions.
  10. * Looking for specific information? Try the :ref:`genindex`, :ref:`modindex` or
  11. the :doc:`detailed table of contents <contents>`.
  12. * Search for information in the archives of the |django-users| mailing list, or
  13. `post a question`_.
  14. * Ask a question in the `#django IRC channel`_, or search the `IRC logs`_ to see
  15. if it's been asked before.
  16. * Report bugs with Django in our `ticket tracker`_.
  17. .. _archives: http://groups.google.com/group/django-users/
  18. .. _post a question: https://groups.google.com/d/forum/django-users
  19. .. _#django IRC channel: irc://irc.freenode.net/django
  20. .. _IRC logs: http://django-irc-logs.com/
  21. .. _ticket tracker: https://code.djangoproject.com/
  22. First steps
  23. ===========
  24. Are you new to Django or to programming? This is the place to start!
  25. * **From scratch:**
  26. :doc:`Overview <intro/overview>` |
  27. :doc:`Installation <intro/install>`
  28. * **Tutorial:**
  29. :doc:`Part 1 <intro/tutorial01>` |
  30. :doc:`Part 2 <intro/tutorial02>` |
  31. :doc:`Part 3 <intro/tutorial03>` |
  32. :doc:`Part 4 <intro/tutorial04>` |
  33. :doc:`Part 5 <intro/tutorial05>` |
  34. :doc:`Part 6 <intro/tutorial06>`
  35. * **Advanced Tutorials:**
  36. :doc:`How to write reusable apps <intro/reusable-apps>` |
  37. :doc:`Writing your first patch for Django <intro/contributing>`
  38. The model layer
  39. ===============
  40. Django provides an abstraction layer (the "models") for structuring and
  41. manipulating the data of your Web application. Learn more about it below:
  42. * **Models:**
  43. :doc:`Model syntax <topics/db/models>` |
  44. :doc:`Field types <ref/models/fields>` |
  45. :doc:`Meta options <ref/models/options>`
  46. * **QuerySets:**
  47. :doc:`Executing queries <topics/db/queries>` |
  48. :doc:`QuerySet method reference <ref/models/querysets>` |
  49. :doc:`Query-related classes <ref/models/queries>`
  50. * **Model instances:**
  51. :doc:`Instance methods <ref/models/instances>` |
  52. :doc:`Accessing related objects <ref/models/relations>`
  53. * **Migrations:**
  54. :doc:`Introduction to Migrations<topics/migrations>`
  55. * **Advanced:**
  56. :doc:`Managers <topics/db/managers>` |
  57. :doc:`Raw SQL <topics/db/sql>` |
  58. :doc:`Transactions <topics/db/transactions>` |
  59. :doc:`Aggregation <topics/db/aggregation>` |
  60. :doc:`Custom fields <howto/custom-model-fields>` |
  61. :doc:`Multiple databases <topics/db/multi-db>` |
  62. :doc:`Custom lookups <ref/models/custom-lookups>`
  63. * **Other:**
  64. :doc:`Supported databases <ref/databases>` |
  65. :doc:`Legacy databases <howto/legacy-databases>` |
  66. :doc:`Providing initial data <howto/initial-data>` |
  67. :doc:`Optimize database access <topics/db/optimization>`
  68. The view layer
  69. ==============
  70. Django has the concept of "views" to encapsulate the logic responsible for
  71. processing a user's request and for returning the response. Find all you need
  72. to know about views via the links below:
  73. * **The basics:**
  74. :doc:`URLconfs <topics/http/urls>` |
  75. :doc:`View functions <topics/http/views>` |
  76. :doc:`Shortcuts <topics/http/shortcuts>` |
  77. :doc:`Decorators <topics/http/decorators>`
  78. * **Reference:**
  79. :doc:`Built-in Views <ref/views>` |
  80. :doc:`Request/response objects <ref/request-response>` |
  81. :doc:`TemplateResponse objects <ref/template-response>`
  82. * **File uploads:**
  83. :doc:`Overview <topics/http/file-uploads>` |
  84. :doc:`File objects <ref/files/file>` |
  85. :doc:`Storage API <ref/files/storage>` |
  86. :doc:`Managing files <topics/files>` |
  87. :doc:`Custom storage <howto/custom-file-storage>`
  88. * **Class-based views:**
  89. :doc:`Overview <topics/class-based-views/index>` |
  90. :doc:`Built-in display views <topics/class-based-views/generic-display>` |
  91. :doc:`Built-in editing views <topics/class-based-views/generic-editing>` |
  92. :doc:`Using mixins <topics/class-based-views/mixins>` |
  93. :doc:`API reference <ref/class-based-views/index>` |
  94. :doc:`Flattened index<ref/class-based-views/flattened-index>`
  95. * **Advanced:**
  96. :doc:`Generating CSV <howto/outputting-csv>` |
  97. :doc:`Generating PDF <howto/outputting-pdf>`
  98. * **Middleware:**
  99. :doc:`Overview <topics/http/middleware>` |
  100. :doc:`Built-in middleware classes <ref/middleware>`
  101. The template layer
  102. ==================
  103. The template layer provides a designer-friendly syntax for rendering the
  104. information to be presented to the user. Learn how this syntax can be used by
  105. designers and how it can be extended by programmers:
  106. * **For designers:**
  107. :doc:`Syntax overview <topics/templates>` |
  108. :doc:`Built-in tags and filters <ref/templates/builtins>` |
  109. :doc:`Web design helpers <ref/contrib/webdesign>` |
  110. :doc:`Humanization <ref/contrib/humanize>`
  111. * **For programmers:**
  112. :doc:`Template API <ref/templates/api>` |
  113. :doc:`Custom tags and filters <howto/custom-template-tags>`
  114. Forms
  115. =====
  116. Django provides a rich framework to facilitate the creation of forms and the
  117. manipulation of form data.
  118. * **The basics:**
  119. :doc:`Overview <topics/forms/index>` |
  120. :doc:`Form API <ref/forms/api>` |
  121. :doc:`Built-in fields <ref/forms/fields>` |
  122. :doc:`Built-in widgets <ref/forms/widgets>`
  123. * **Advanced:**
  124. :doc:`Forms for models <topics/forms/modelforms>` |
  125. :doc:`Integrating media <topics/forms/media>` |
  126. :doc:`Formsets <topics/forms/formsets>` |
  127. :doc:`Customizing validation <ref/forms/validation>`
  128. * **Extras:**
  129. :doc:`Form preview <ref/contrib/formtools/form-preview>` |
  130. :doc:`Form wizard <ref/contrib/formtools/form-wizard>`
  131. The development process
  132. =======================
  133. Learn about the various components and tools to help you in the development and
  134. testing of Django applications:
  135. * **Settings:**
  136. :doc:`Overview <topics/settings>` |
  137. :doc:`Full list of settings <ref/settings>`
  138. * **Applications:**
  139. :doc:`Overview <ref/applications>`
  140. * **Exceptions:**
  141. :doc:`Overview <ref/exceptions>`
  142. * **django-admin.py and manage.py:**
  143. :doc:`Overview <ref/django-admin>` |
  144. :doc:`Adding custom commands <howto/custom-management-commands>`
  145. * **Testing:**
  146. :doc:`Introduction <topics/testing/index>` |
  147. :doc:`Writing and running tests <topics/testing/overview>` |
  148. :doc:`Advanced topics <topics/testing/advanced>`
  149. * **Deployment:**
  150. :doc:`Overview <howto/deployment/index>` |
  151. :doc:`WSGI servers <howto/deployment/wsgi/index>` |
  152. :doc:`FastCGI/SCGI/AJP <howto/deployment/fastcgi>` (deprecated) |
  153. :doc:`Deploying static files <howto/static-files/deployment>` |
  154. :doc:`Tracking code errors by email <howto/error-reporting>`
  155. The admin
  156. =========
  157. Find all you need to know about the automated admin interface, one of Django's
  158. most popular features:
  159. * :doc:`Admin site <ref/contrib/admin/index>`
  160. * :doc:`Admin actions <ref/contrib/admin/actions>`
  161. * :doc:`Admin documentation generator<ref/contrib/admin/admindocs>`
  162. Security
  163. ========
  164. Security is a topic of paramount importance in the development of Web
  165. applications and Django provides multiple protection tools and mechanisms:
  166. * :doc:`Security overview <topics/security>`
  167. * :doc:`Disclosed security issues in Django <releases/security>`
  168. * :doc:`Clickjacking protection <ref/clickjacking>`
  169. * :doc:`Cross Site Request Forgery protection <ref/contrib/csrf>`
  170. * :doc:`Cryptographic signing <topics/signing>`
  171. Internationalization and localization
  172. =====================================
  173. Django offers a robust internationalization and localization framework to
  174. assist you in the development of applications for multiple languages and world
  175. regions:
  176. * :doc:`Overview <topics/i18n/index>` |
  177. :doc:`Internationalization <topics/i18n/translation>` |
  178. :ref:`Localization <how-to-create-language-files>` |
  179. :doc:`Localized Web UI formatting and form input <topics/i18n/formatting>`
  180. * :doc:`"Local flavor" <topics/localflavor>`
  181. * :doc:`Time zones </topics/i18n/timezones>`
  182. Performance and optimization
  183. ============================
  184. There are a variety of techniques and tools that can help get your code running
  185. more efficiently - faster, and using fewer system resources.
  186. * :doc:`Performance and optimization overview <topics/performance>`
  187. Python compatibility
  188. ====================
  189. Django aims to be compatible with multiple different flavors and versions of
  190. Python:
  191. * :doc:`Jython support <howto/jython>`
  192. * :doc:`Python 3 compatibility <topics/python3>`
  193. Geographic framework
  194. ====================
  195. :doc:`GeoDjango <ref/contrib/gis/index>` intends to be a world-class geographic
  196. Web framework. Its goal is to make it as easy as possible to build GIS Web
  197. applications and harness the power of spatially enabled data.
  198. Common Web application tools
  199. ============================
  200. Django offers multiple tools commonly needed in the development of Web
  201. applications:
  202. * :doc:`Authentication <topics/auth/index>`
  203. * :doc:`Caching <topics/cache>`
  204. * :doc:`Logging <topics/logging>`
  205. * :doc:`Sending emails <topics/email>`
  206. * :doc:`Syndication feeds (RSS/Atom) <ref/contrib/syndication>`
  207. * :doc:`Pagination <topics/pagination>`
  208. * :doc:`Messages framework <ref/contrib/messages>`
  209. * :doc:`Serialization <topics/serialization>`
  210. * :doc:`Sessions <topics/http/sessions>`
  211. * :doc:`Sitemaps <ref/contrib/sitemaps>`
  212. * :doc:`Static files management <ref/contrib/staticfiles>`
  213. * :doc:`Data validation <ref/validators>`
  214. Other core functionalities
  215. ==========================
  216. Learn about some other core functionalities of the Django framework:
  217. * :doc:`Conditional content processing <topics/conditional-view-processing>`
  218. * :doc:`Content types and generic relations <ref/contrib/contenttypes>`
  219. * :doc:`Flatpages <ref/contrib/flatpages>`
  220. * :doc:`Redirects <ref/contrib/redirects>`
  221. * :doc:`Signals <topics/signals>`
  222. * :doc:`The sites framework <ref/contrib/sites>`
  223. * :doc:`Unicode in Django <ref/unicode>`
  224. The Django open-source project
  225. ==============================
  226. Learn about the development process for the Django project itself and about how
  227. you can contribute:
  228. * **Community:**
  229. :doc:`How to get involved <internals/contributing/index>` |
  230. :doc:`The release process <internals/release-process>` |
  231. :doc:`Team of committers <internals/committers>` |
  232. :doc:`The Django source code repository <internals/git>` |
  233. :doc:`Security policies <internals/security>` |
  234. :doc:`Mailing lists <internals/mailing-lists>`
  235. * **Design philosophies:**
  236. :doc:`Overview <misc/design-philosophies>`
  237. * **Documentation:**
  238. :doc:`About this documentation <internals/contributing/writing-documentation>`
  239. * **Third-party distributions:**
  240. :doc:`Overview <misc/distributions>`
  241. * **Django over time:**
  242. :doc:`API stability <misc/api-stability>` |
  243. :doc:`Release notes and upgrading instructions <releases/index>` |
  244. :doc:`Deprecation Timeline <internals/deprecation>`