{"title":"django.contrib.postgres","version":"3.2","locale":"es","docname":"ref/contrib/postgres/index","url":"/es/3.2/ref/contrib/postgres/","canonical":"https://djangodocs.dev/es/3.2/ref/contrib/postgres/","summary":"PostgreSQL has a number of features which are not shared by the other databases Django supports.","html":"<span id=\"django-contrib-postgres\"></span><h1><code class=\"docutils literal notranslate\">django.contrib.postgres</code><a class=\"heading-anchor\" href=\"#module-django.contrib.postgres\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>PostgreSQL has a number of features which are not shared by the other databases\nDjango supports. This optional module contains model fields and form fields for\na number of PostgreSQL specific data types.</p>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Nota</p>\n<p>Django is, and will continue to be, a database-agnostic web framework. We\nwould encourage those writing reusable applications for the Django\ncommunity to write database-agnostic code where practical. However, we\nrecognize that real world projects written using Django need not be\ndatabase-agnostic. In fact, once a project reaches a given size changing\nthe underlying data store is already a significant challenge and is likely\nto require changing the code base in some ways to handle differences\nbetween the data stores.</p>\n<p>Django provides support for a number of data types which will\nonly work with PostgreSQL. There is no fundamental reason why (for example)\na <code class=\"docutils literal notranslate\">contrib.mysql</code> module does not exist, except that PostgreSQL has the\nrichest feature set of the supported databases so its users have the most\nto gain.</p>\n</aside>\n<div class=\"toctree-wrapper compound\">\n<ul>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/aggregates/\">PostgreSQL specific aggregation functions</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/aggregates/#general-purpose-aggregation-functions\">General-purpose aggregation functions</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/aggregates/#aggregate-functions-for-statistics\">Aggregate functions for statistics</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/aggregates/#usage-examples\">Usage examples</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/constraints/\">PostgreSQL specific database constraints</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/constraints/#exclusionconstraint\"><code class=\"docutils literal notranslate\">ExclusionConstraint</code></a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/\">PostgreSQL specific model fields</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#indexing-these-fields\">Indexing these fields</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#arrayfield\"><code class=\"docutils literal notranslate\">ArrayField</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#citext-fields\"><code class=\"docutils literal notranslate\">CIText</code> fields</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#hstorefield\"><code class=\"docutils literal notranslate\">HStoreField</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#jsonfield\"><code class=\"docutils literal notranslate\">JSONField</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/fields/#range-fields\">Range Fields</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/forms/\">PostgreSQL specific form fields and widgets</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/forms/#fields\">Fields</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/forms/#widgets\">Widgets</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/functions/\">PostgreSQL specific database functions</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/functions/#randomuuid\"><code class=\"docutils literal notranslate\">RandomUUID</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/functions/#transactionnow\"><code class=\"docutils literal notranslate\">TransactionNow</code></a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/\">PostgreSQL specific model indexes</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#bloomindex\"><code class=\"docutils literal notranslate\">BloomIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#brinindex\"><code class=\"docutils literal notranslate\">BrinIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#btreeindex\"><code class=\"docutils literal notranslate\">BTreeIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#ginindex\"><code class=\"docutils literal notranslate\">GinIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#gistindex\"><code class=\"docutils literal notranslate\">GistIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#hashindex\"><code class=\"docutils literal notranslate\">HashIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#spgistindex\"><code class=\"docutils literal notranslate\">SpGistIndex</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/indexes/#opclass-expressions\"><code class=\"docutils literal notranslate\">OpClass()</code> expressions</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/lookups/\">PostgreSQL specific lookups</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/lookups/#trigram-similarity\">Trigram similarity</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/lookups/#unaccent\"><code class=\"docutils literal notranslate\">Unaccent</code></a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/\">Database migration operations</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#creating-extension-using-migrations\">Creating extension using migrations</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#createextension\"><code class=\"docutils literal notranslate\">CreateExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#bloomextension\"><code class=\"docutils literal notranslate\">BloomExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#btreeginextension\"><code class=\"docutils literal notranslate\">BtreeGinExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#btreegistextension\"><code class=\"docutils literal notranslate\">BtreeGistExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#citextextension\"><code class=\"docutils literal notranslate\">CITextExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#cryptoextension\"><code class=\"docutils literal notranslate\">CryptoExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#hstoreextension\"><code class=\"docutils literal notranslate\">HStoreExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#trigramextension\"><code class=\"docutils literal notranslate\">TrigramExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#unaccentextension\"><code class=\"docutils literal notranslate\">UnaccentExtension</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#managing-collations-using-migrations\">Managing collations using migrations</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/operations/#concurrent-index-operations\">Concurrent index operations</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/\">Full text search</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#the-search-lookup\">The <code class=\"docutils literal notranslate\">search</code> lookup</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#searchvector\"><code class=\"docutils literal notranslate\">SearchVector</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#searchquery\"><code class=\"docutils literal notranslate\">SearchQuery</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#searchrank\"><code class=\"docutils literal notranslate\">SearchRank</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#searchheadline\"><code class=\"docutils literal notranslate\">SearchHeadline</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#changing-the-search-configuration\">Changing the search configuration</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#weighting-queries\">Weighting queries</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#performance\">Performance</a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/search/#trigram-similarity\">Trigram similarity</a></li>\n</ul>\n</li>\n<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/validators/\">Validators</a><ul>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/validators/#keysvalidator\"><code class=\"docutils literal notranslate\">KeysValidator</code></a></li>\n<li class=\"toctree-l2\"><a class=\"reference internal\" href=\"/es/3.2/ref/contrib/postgres/validators/#range-validators\">Range validators</a></li>\n</ul>\n</li>\n</ul>\n</div>","rootId":"module-django.contrib.postgres","toc":[],"breadcrumbs":[{"docname":"ref/index","title":"API Reference","url":"/es/3.2/ref/"},{"docname":"ref/contrib/index","title":"contrib packages","url":"/es/3.2/ref/contrib/"}],"prev":{"docname":"ref/contrib/messages","title":"The messages framework","url":"/es/3.2/ref/contrib/messages/"},"next":{"docname":"ref/contrib/postgres/aggregates","title":"PostgreSQL specific aggregation functions","url":"/es/3.2/ref/contrib/postgres/aggregates/"},"formats":{"html":"/es/3.2/ref/contrib/postgres/","markdown":"/es/3.2/ref/contrib/postgres.md","json":"/es/3.2/ref/contrib/postgres.json"},"source":"https://github.com/django/django/blob/stable/3.2.x/docs/ref/contrib/postgres/index.txt","official":"https://docs.djangoproject.com/es/3.2/ref/contrib/postgres/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}