1. ===========================
    
  2. ``django.contrib.postgres``
    
  3. ===========================
    
  4. 
    
  5. .. module:: django.contrib.postgres
    
  6.     :synopsis: PostgreSQL-specific fields and features
    
  7. 
    
  8. PostgreSQL has a number of features which are not shared by the other databases
    
  9. Django supports. This optional module contains model fields and form fields for
    
  10. a number of PostgreSQL specific data types.
    
  11. 
    
  12. .. note::
    
  13.     Django is, and will continue to be, a database-agnostic web framework. We
    
  14.     would encourage those writing reusable applications for the Django
    
  15.     community to write database-agnostic code where practical. However, we
    
  16.     recognize that real world projects written using Django need not be
    
  17.     database-agnostic. In fact, once a project reaches a given size changing
    
  18.     the underlying data store is already a significant challenge and is likely
    
  19.     to require changing the code base in some ways to handle differences
    
  20.     between the data stores.
    
  21. 
    
  22.     Django provides support for a number of data types which will
    
  23.     only work with PostgreSQL. There is no fundamental reason why (for example)
    
  24.     a ``contrib.mysql`` module does not exist, except that PostgreSQL has the
    
  25.     richest feature set of the supported databases so its users have the most
    
  26.     to gain.
    
  27. 
    
  28. .. toctree::
    
  29.     :maxdepth: 2
    
  30. 
    
  31.     aggregates
    
  32.     constraints
    
  33.     expressions
    
  34.     fields
    
  35.     forms
    
  36.     functions
    
  37.     indexes
    
  38.     lookups
    
  39.     operations
    
  40.     search
    
  41.     validators