mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	[2.2.x] Removed unnecessary /static from links to PostgreSQL docs.
Backport of 198a2a9381 from master.
			
			
This commit is contained in:
		| @@ -18,7 +18,7 @@ class DatabaseOperations(BaseDatabaseOperations): | |||||||
|         if internal_type in ("GenericIPAddressField", "IPAddressField", "TimeField", "UUIDField"): |         if internal_type in ("GenericIPAddressField", "IPAddressField", "TimeField", "UUIDField"): | ||||||
|             # PostgreSQL will resolve a union as type 'text' if input types are |             # PostgreSQL will resolve a union as type 'text' if input types are | ||||||
|             # 'unknown'. |             # 'unknown'. | ||||||
|             # https://www.postgresql.org/docs/current/static/typeconv-union-case.html |             # https://www.postgresql.org/docs/current/typeconv-union-case.html | ||||||
|             # These fields cannot be implicitly cast back in the default |             # These fields cannot be implicitly cast back in the default | ||||||
|             # PostgreSQL configuration so we need to explicitly cast them. |             # PostgreSQL configuration so we need to explicitly cast them. | ||||||
|             # We must also remove components of the type within brackets: |             # We must also remove components of the type within brackets: | ||||||
| @@ -27,7 +27,7 @@ class DatabaseOperations(BaseDatabaseOperations): | |||||||
|         return '%s' |         return '%s' | ||||||
|  |  | ||||||
|     def date_extract_sql(self, lookup_type, field_name): |     def date_extract_sql(self, lookup_type, field_name): | ||||||
|         # https://www.postgresql.org/docs/current/static/functions-datetime.html#FUNCTIONS-DATETIME-EXTRACT |         # https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-EXTRACT | ||||||
|         if lookup_type == 'week_day': |         if lookup_type == 'week_day': | ||||||
|             # For consistency across backends, we return Sunday=1, Saturday=7. |             # For consistency across backends, we return Sunday=1, Saturday=7. | ||||||
|             return "EXTRACT('dow' FROM %s) + 1" % field_name |             return "EXTRACT('dow' FROM %s) + 1" % field_name | ||||||
| @@ -37,7 +37,7 @@ class DatabaseOperations(BaseDatabaseOperations): | |||||||
|             return "EXTRACT('%s' FROM %s)" % (lookup_type, field_name) |             return "EXTRACT('%s' FROM %s)" % (lookup_type, field_name) | ||||||
|  |  | ||||||
|     def date_trunc_sql(self, lookup_type, field_name): |     def date_trunc_sql(self, lookup_type, field_name): | ||||||
|         # https://www.postgresql.org/docs/current/static/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC |         # https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC | ||||||
|         return "DATE_TRUNC('%s', %s)" % (lookup_type, field_name) |         return "DATE_TRUNC('%s', %s)" % (lookup_type, field_name) | ||||||
|  |  | ||||||
|     def _convert_field_to_tz(self, field_name, tzname): |     def _convert_field_to_tz(self, field_name, tzname): | ||||||
| @@ -59,7 +59,7 @@ class DatabaseOperations(BaseDatabaseOperations): | |||||||
|  |  | ||||||
|     def datetime_trunc_sql(self, lookup_type, field_name, tzname): |     def datetime_trunc_sql(self, lookup_type, field_name, tzname): | ||||||
|         field_name = self._convert_field_to_tz(field_name, tzname) |         field_name = self._convert_field_to_tz(field_name, tzname) | ||||||
|         # https://www.postgresql.org/docs/current/static/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC |         # https://www.postgresql.org/docs/current/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC | ||||||
|         return "DATE_TRUNC('%s', %s)" % (lookup_type, field_name) |         return "DATE_TRUNC('%s', %s)" % (lookup_type, field_name) | ||||||
|  |  | ||||||
|     def time_trunc_sql(self, lookup_type, field_name): |     def time_trunc_sql(self, lookup_type, field_name): | ||||||
|   | |||||||
| @@ -19,7 +19,7 @@ only the common types, such as ``VARCHAR`` and ``INTEGER``. For more obscure | |||||||
| column types, such as geographic polygons or even user-created types such as | column types, such as geographic polygons or even user-created types such as | ||||||
| `PostgreSQL custom types`_, you can define your own Django ``Field`` subclasses. | `PostgreSQL custom types`_, you can define your own Django ``Field`` subclasses. | ||||||
|  |  | ||||||
| .. _PostgreSQL custom types: https://www.postgresql.org/docs/current/static/sql-createtype.html | .. _PostgreSQL custom types: https://www.postgresql.org/docs/current/sql-createtype.html | ||||||
|  |  | ||||||
| Alternatively, you may have a complex Python object that can somehow be | Alternatively, you may have a complex Python object that can somehow be | ||||||
| serialized to fit into a standard database column type. This is another case | serialized to fit into a standard database column type. This is another case | ||||||
|   | |||||||
| @@ -7,7 +7,7 @@ PostgreSQL specific aggregation functions | |||||||
|  |  | ||||||
| These functions are available from the ``django.contrib.postgres.aggregates`` | These functions are available from the ``django.contrib.postgres.aggregates`` | ||||||
| module. They are described in more detail in the `PostgreSQL docs | module. They are described in more detail in the `PostgreSQL docs | ||||||
| <https://www.postgresql.org/docs/current/static/functions-aggregate.html>`_. | <https://www.postgresql.org/docs/current/functions-aggregate.html>`_. | ||||||
|  |  | ||||||
| .. note:: | .. note:: | ||||||
|  |  | ||||||
|   | |||||||
| @@ -283,8 +283,8 @@ transform do not change. For example:: | |||||||
|     ``max_length`` won't be enforced in the database since ``citext`` behaves |     ``max_length`` won't be enforced in the database since ``citext`` behaves | ||||||
|     similar to PostgreSQL's ``text`` type. |     similar to PostgreSQL's ``text`` type. | ||||||
|  |  | ||||||
|     .. _citext: https://www.postgresql.org/docs/current/static/citext.html |     .. _citext: https://www.postgresql.org/docs/current/citext.html | ||||||
|     .. _the performance considerations: https://www.postgresql.org/docs/current/static/citext.html#AEN178177 |     .. _the performance considerations: https://www.postgresql.org/docs/current/citext.html#AEN178177 | ||||||
|  |  | ||||||
| ``HStoreField`` | ``HStoreField`` | ||||||
| =============== | =============== | ||||||
|   | |||||||
| @@ -18,7 +18,7 @@ The `pgcrypto extension`_ must be installed. You can use the | |||||||
| :class:`~django.contrib.postgres.operations.CryptoExtension` migration | :class:`~django.contrib.postgres.operations.CryptoExtension` migration | ||||||
| operation to install it. | operation to install it. | ||||||
|  |  | ||||||
| .. _pgcrypto extension: https://www.postgresql.org/docs/current/static/pgcrypto.html | .. _pgcrypto extension: https://www.postgresql.org/docs/current/pgcrypto.html | ||||||
|  |  | ||||||
| Usage example:: | Usage example:: | ||||||
|  |  | ||||||
|   | |||||||
| @@ -13,14 +13,14 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
| .. class:: BrinIndex(autosummarize=None, pages_per_range=None, **options) | .. class:: BrinIndex(autosummarize=None, pages_per_range=None, **options) | ||||||
|  |  | ||||||
|     Creates a `BRIN index |     Creates a `BRIN index | ||||||
|     <https://www.postgresql.org/docs/current/static/brin-intro.html>`_. |     <https://www.postgresql.org/docs/current/brin-intro.html>`_. | ||||||
|  |  | ||||||
|     Set the ``autosummarize`` parameter to ``True`` to enable `automatic |     Set the ``autosummarize`` parameter to ``True`` to enable `automatic | ||||||
|     summarization`_ to be performed by autovacuum. |     summarization`_ to be performed by autovacuum. | ||||||
|  |  | ||||||
|     The ``pages_per_range`` argument takes a positive integer. |     The ``pages_per_range`` argument takes a positive integer. | ||||||
|  |  | ||||||
|     .. _automatic summarization: https://www.postgresql.org/docs/current/static/brin-intro.html#BRIN-OPERATION |     .. _automatic summarization: https://www.postgresql.org/docs/current/brin-intro.html#BRIN-OPERATION | ||||||
|  |  | ||||||
|     .. versionchanged:: 2.2 |     .. versionchanged:: 2.2 | ||||||
|  |  | ||||||
| @@ -38,20 +38,19 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
|     Provide an integer value from 10 to 100 to the fillfactor_ parameter to |     Provide an integer value from 10 to 100 to the fillfactor_ parameter to | ||||||
|     tune how packed the index pages will be. PostgreSQL's default is 90. |     tune how packed the index pages will be. PostgreSQL's default is 90. | ||||||
|  |  | ||||||
|     .. _fillfactor: https://www.postgresql.org/docs/current/static/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS |     .. _fillfactor: https://www.postgresql.org/docs/current/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS | ||||||
|  |  | ||||||
| ``GinIndex`` | ``GinIndex`` | ||||||
| ============ | ============ | ||||||
|  |  | ||||||
| .. class:: GinIndex(fastupdate=None, gin_pending_list_limit=None, **options) | .. class:: GinIndex(fastupdate=None, gin_pending_list_limit=None, **options) | ||||||
|  |  | ||||||
|     Creates a `gin index |     Creates a `gin index <https://www.postgresql.org/docs/current/gin.html>`_. | ||||||
|     <https://www.postgresql.org/docs/current/static/gin.html>`_. |  | ||||||
|  |  | ||||||
|     To use this index on data types not in the `built-in operator classes |     To use this index on data types not in the `built-in operator classes | ||||||
|     <https://www.postgresql.org/docs/current/static/gin-builtin-opclasses.html>`_, |     <https://www.postgresql.org/docs/current/gin-builtin-opclasses.html>`_, | ||||||
|     you need to activate the `btree_gin extension |     you need to activate the `btree_gin extension | ||||||
|     <https://www.postgresql.org/docs/current/static/btree-gin.html>`_ on |     <https://www.postgresql.org/docs/current/btree-gin.html>`_ on | ||||||
|     PostgreSQL. You can install it using the |     PostgreSQL. You can install it using the | ||||||
|     :class:`~django.contrib.postgres.operations.BtreeGinExtension` migration |     :class:`~django.contrib.postgres.operations.BtreeGinExtension` migration | ||||||
|     operation. |     operation. | ||||||
| @@ -63,8 +62,8 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
|     to tune the maximum size of the GIN pending list which is used when |     to tune the maximum size of the GIN pending list which is used when | ||||||
|     ``fastupdate`` is enabled. This parameter requires PostgreSQL ≥ 9.5. |     ``fastupdate`` is enabled. This parameter requires PostgreSQL ≥ 9.5. | ||||||
|  |  | ||||||
|     .. _GIN Fast Update Technique: https://www.postgresql.org/docs/current/static/gin-implementation.html#GIN-FAST-UPDATE |     .. _GIN Fast Update Technique: https://www.postgresql.org/docs/current/gin-implementation.html#GIN-FAST-UPDATE | ||||||
|     .. _gin_pending_list_limit: https://www.postgresql.org/docs/current/static/runtime-config-client.html#GUC-GIN-PENDING-LIST-LIMIT |     .. _gin_pending_list_limit: https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-GIN-PENDING-LIST-LIMIT | ||||||
|  |  | ||||||
| ``GistIndex`` | ``GistIndex`` | ||||||
| ============= | ============= | ||||||
| @@ -72,18 +71,18 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
| .. class:: GistIndex(buffering=None, fillfactor=None, **options) | .. class:: GistIndex(buffering=None, fillfactor=None, **options) | ||||||
|  |  | ||||||
|     Creates a `GiST index |     Creates a `GiST index | ||||||
|     <https://www.postgresql.org/docs/current/static/gist.html>`_. These indexes |     <https://www.postgresql.org/docs/current/gist.html>`_. These indexes are | ||||||
|     are automatically created on spatial fields with :attr:`spatial_index=True |     automatically created on spatial fields with :attr:`spatial_index=True | ||||||
|     <django.contrib.gis.db.models.BaseSpatialField.spatial_index>`. They're |     <django.contrib.gis.db.models.BaseSpatialField.spatial_index>`. They're | ||||||
|     also useful on other types, such as |     also useful on other types, such as | ||||||
|     :class:`~django.contrib.postgres.fields.HStoreField` or the :ref:`range |     :class:`~django.contrib.postgres.fields.HStoreField` or the :ref:`range | ||||||
|     fields <range-fields>`. |     fields <range-fields>`. | ||||||
|  |  | ||||||
|     To use this index on data types not in the built-in `gist operator classes |     To use this index on data types not in the built-in `gist operator classes | ||||||
|     <https://www.postgresql.org/docs/current/static/gist-builtin-opclasses.html>`_, |     <https://www.postgresql.org/docs/current/gist-builtin-opclasses.html>`_, | ||||||
|     you need to activate the `btree_gist extension |     you need to activate the `btree_gist extension | ||||||
|     <https://www.postgresql.org/docs/current/static/btree-gist.html>`_ on |     <https://www.postgresql.org/docs/current/btree-gist.html>`_ on PostgreSQL. | ||||||
|     PostgreSQL. You can install it using the |     You can install it using the | ||||||
|     :class:`~django.contrib.postgres.operations.BtreeGistExtension` migration |     :class:`~django.contrib.postgres.operations.BtreeGistExtension` migration | ||||||
|     operation. |     operation. | ||||||
|  |  | ||||||
| @@ -93,8 +92,8 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
|     Provide an integer value from 10 to 100 to the fillfactor_ parameter to |     Provide an integer value from 10 to 100 to the fillfactor_ parameter to | ||||||
|     tune how packed the index pages will be. PostgreSQL's default is 90. |     tune how packed the index pages will be. PostgreSQL's default is 90. | ||||||
|  |  | ||||||
|     .. _buffering build: https://www.postgresql.org/docs/current/static/gist-implementation.html#GIST-BUFFERING-BUILD |     .. _buffering build: https://www.postgresql.org/docs/current/gist-implementation.html#GIST-BUFFERING-BUILD | ||||||
|     .. _fillfactor: https://www.postgresql.org/docs/current/static/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS |     .. _fillfactor: https://www.postgresql.org/docs/current/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS | ||||||
|  |  | ||||||
| ``HashIndex`` | ``HashIndex`` | ||||||
| ============= | ============= | ||||||
| @@ -113,7 +112,7 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
|         Hash indexes have been available in PostgreSQL for a long time, but |         Hash indexes have been available in PostgreSQL for a long time, but | ||||||
|         they suffer from a number of data integrity issues in older versions. |         they suffer from a number of data integrity issues in older versions. | ||||||
|  |  | ||||||
|     .. _fillfactor: https://www.postgresql.org/docs/current/static/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS |     .. _fillfactor: https://www.postgresql.org/docs/current/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS | ||||||
|  |  | ||||||
| ``SpGistIndex`` | ``SpGistIndex`` | ||||||
| =============== | =============== | ||||||
| @@ -123,9 +122,9 @@ available from the ``django.contrib.postgres.indexes`` module. | |||||||
|     .. versionadded:: 2.2 |     .. versionadded:: 2.2 | ||||||
|  |  | ||||||
|     Creates an `SP-GiST index |     Creates an `SP-GiST index | ||||||
|     <https://www.postgresql.org/docs/current/static/spgist.html>`_. |     <https://www.postgresql.org/docs/current/spgist.html>`_. | ||||||
|  |  | ||||||
|     Provide an integer value from 10 to 100 to the fillfactor_ parameter to |     Provide an integer value from 10 to 100 to the fillfactor_ parameter to | ||||||
|     tune how packed the index pages will be. PostgreSQL's default is 90. |     tune how packed the index pages will be. PostgreSQL's default is 90. | ||||||
|  |  | ||||||
|     .. _fillfactor: https://www.postgresql.org/docs/current/static/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS |     .. _fillfactor: https://www.postgresql.org/docs/current/sql-createindex.html#SQL-CREATEINDEX-STORAGE-PARAMETERS | ||||||
|   | |||||||
| @@ -15,8 +15,8 @@ similarity threshold. | |||||||
|  |  | ||||||
| To use it, add ``'django.contrib.postgres'`` in your :setting:`INSTALLED_APPS` | To use it, add ``'django.contrib.postgres'`` in your :setting:`INSTALLED_APPS` | ||||||
| and activate the `pg_trgm extension | and activate the `pg_trgm extension | ||||||
| <https://www.postgresql.org/docs/current/static/pgtrgm.html>`_ on | <https://www.postgresql.org/docs/current/pgtrgm.html>`_ on PostgreSQL. You can | ||||||
| PostgreSQL. You can install the extension using the | install the extension using the | ||||||
| :class:`~django.contrib.postgres.operations.TrigramExtension` migration | :class:`~django.contrib.postgres.operations.TrigramExtension` migration | ||||||
| operation. | operation. | ||||||
|  |  | ||||||
| @@ -41,7 +41,7 @@ the `unaccent extension on PostgreSQL`_. The | |||||||
| :class:`~django.contrib.postgres.operations.UnaccentExtension` migration | :class:`~django.contrib.postgres.operations.UnaccentExtension` migration | ||||||
| operation is available if you want to perform this activation using migrations). | operation is available if you want to perform this activation using migrations). | ||||||
|  |  | ||||||
| .. _unaccent extension on PostgreSQL: https://www.postgresql.org/docs/current/static/unaccent.html | .. _unaccent extension on PostgreSQL: https://www.postgresql.org/docs/current/unaccent.html | ||||||
|  |  | ||||||
| The ``unaccent`` lookup can be used on | The ``unaccent`` lookup can be used on | ||||||
| :class:`~django.db.models.CharField` and :class:`~django.db.models.TextField`:: | :class:`~django.db.models.CharField` and :class:`~django.db.models.TextField`:: | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ Full text search | |||||||
|  |  | ||||||
| The database functions in the ``django.contrib.postgres.search`` module ease | The database functions in the ``django.contrib.postgres.search`` module ease | ||||||
| the use of PostgreSQL's `full text search engine | the use of PostgreSQL's `full text search engine | ||||||
| <https://www.postgresql.org/docs/current/static/textsearch.html>`_. | <https://www.postgresql.org/docs/current/textsearch.html>`_. | ||||||
|  |  | ||||||
| For the examples in this document, we'll use the models defined in | For the examples in this document, we'll use the models defined in | ||||||
| :doc:`/topics/db/queries`. | :doc:`/topics/db/queries`. | ||||||
| @@ -83,7 +83,7 @@ as a single phrase. If ``search_type`` is ``'raw'``, then you can provide a | |||||||
| formatted search query with terms and operators. Read PostgreSQL's `Full Text | formatted search query with terms and operators. Read PostgreSQL's `Full Text | ||||||
| Search docs`_ to learn about differences and syntax. Examples: | Search docs`_ to learn about differences and syntax. Examples: | ||||||
|  |  | ||||||
| .. _Full Text Search docs: https://www.postgresql.org/docs/current/static/textsearch-controls.html#TEXTSEARCH-PARSING-QUERIES | .. _Full Text Search docs: https://www.postgresql.org/docs/current/textsearch-controls.html#TEXTSEARCH-PARSING-QUERIES | ||||||
|  |  | ||||||
|     >>> from django.contrib.postgres.search import SearchQuery |     >>> from django.contrib.postgres.search import SearchQuery | ||||||
|     >>> SearchQuery('red tomato')  # two keywords |     >>> SearchQuery('red tomato')  # two keywords | ||||||
| @@ -184,7 +184,7 @@ In the event that all the fields you're querying on are contained within one | |||||||
| particular model, you can create a functional index which matches the search | particular model, you can create a functional index which matches the search | ||||||
| vector you wish to use. The PostgreSQL documentation has details on | vector you wish to use. The PostgreSQL documentation has details on | ||||||
| `creating indexes for full text search | `creating indexes for full text search | ||||||
| <https://www.postgresql.org/docs/current/static/textsearch-tables.html#TEXTSEARCH-TABLES-INDEX>`_. | <https://www.postgresql.org/docs/current/textsearch-tables.html#TEXTSEARCH-TABLES-INDEX>`_. | ||||||
|  |  | ||||||
| ``SearchVectorField`` | ``SearchVectorField`` | ||||||
| --------------------- | --------------------- | ||||||
| @@ -200,7 +200,7 @@ if it were an annotated ``SearchVector``:: | |||||||
|     >>> Entry.objects.filter(search_vector='cheese') |     >>> Entry.objects.filter(search_vector='cheese') | ||||||
|     [<Entry: Cheese on Toast recipes>, <Entry: Pizza recipes>] |     [<Entry: Cheese on Toast recipes>, <Entry: Pizza recipes>] | ||||||
|  |  | ||||||
| .. _PostgreSQL documentation: https://www.postgresql.org/docs/current/static/textsearch-features.html#TEXTSEARCH-UPDATE-TRIGGERS | .. _PostgreSQL documentation: https://www.postgresql.org/docs/current/textsearch-features.html#TEXTSEARCH-UPDATE-TRIGGERS | ||||||
|  |  | ||||||
| Trigram similarity | Trigram similarity | ||||||
| ================== | ================== | ||||||
| @@ -210,8 +210,8 @@ three consecutive characters. In addition to the :lookup:`trigram_similar` | |||||||
| lookup, you can use a couple of other expressions. | lookup, you can use a couple of other expressions. | ||||||
|  |  | ||||||
| To use them, you need to activate the `pg_trgm extension | To use them, you need to activate the `pg_trgm extension | ||||||
| <https://www.postgresql.org/docs/current/static/pgtrgm.html>`_ on | <https://www.postgresql.org/docs/current/pgtrgm.html>`_ on PostgreSQL. You can | ||||||
| PostgreSQL. You can install it using the | install it using the | ||||||
| :class:`~django.contrib.postgres.operations.TrigramExtension` migration | :class:`~django.contrib.postgres.operations.TrigramExtension` migration | ||||||
| operation. | operation. | ||||||
|  |  | ||||||
|   | |||||||
| @@ -121,7 +121,7 @@ user with `ALTER ROLE`_. | |||||||
| Django will work just fine without this optimization, but each new connection | Django will work just fine without this optimization, but each new connection | ||||||
| will do some additional queries to set these parameters. | will do some additional queries to set these parameters. | ||||||
|  |  | ||||||
| .. _ALTER ROLE: https://www.postgresql.org/docs/current/static/sql-alterrole.html | .. _ALTER ROLE: https://www.postgresql.org/docs/current/sql-alterrole.html | ||||||
|  |  | ||||||
| .. _database-isolation-level: | .. _database-isolation-level: | ||||||
|  |  | ||||||
| @@ -148,7 +148,7 @@ configuration in :setting:`DATABASES`:: | |||||||
|     handle exceptions raised on serialization failures. This option is |     handle exceptions raised on serialization failures. This option is | ||||||
|     designed for advanced uses. |     designed for advanced uses. | ||||||
|  |  | ||||||
| .. _isolation level: https://www.postgresql.org/docs/current/static/transaction-iso.html | .. _isolation level: https://www.postgresql.org/docs/current/transaction-iso.html | ||||||
|  |  | ||||||
| Indexes for ``varchar`` and ``text`` columns | Indexes for ``varchar`` and ``text`` columns | ||||||
| -------------------------------------------- | -------------------------------------------- | ||||||
| @@ -162,7 +162,7 @@ for the column.  The extra index is necessary to correctly perform | |||||||
| lookups that use the ``LIKE`` operator in their SQL, as is done with the | lookups that use the ``LIKE`` operator in their SQL, as is done with the | ||||||
| ``contains`` and ``startswith`` lookup types. | ``contains`` and ``startswith`` lookup types. | ||||||
|  |  | ||||||
| .. _PostgreSQL operator class: https://www.postgresql.org/docs/current/static/indexes-opclass.html | .. _PostgreSQL operator class: https://www.postgresql.org/docs/current/indexes-opclass.html | ||||||
|  |  | ||||||
| Migration operation for adding extensions | Migration operation for adding extensions | ||||||
| ----------------------------------------- | ----------------------------------------- | ||||||
| @@ -185,7 +185,7 @@ faster, but this could diminish performance if more than 10% of the results are | |||||||
| retrieved. PostgreSQL's assumptions on the number of rows retrieved for a | retrieved. PostgreSQL's assumptions on the number of rows retrieved for a | ||||||
| cursor query is controlled with the `cursor_tuple_fraction`_ option. | cursor query is controlled with the `cursor_tuple_fraction`_ option. | ||||||
|  |  | ||||||
| .. _cursor_tuple_fraction: https://www.postgresql.org/docs/current/static/runtime-config-query.html#GUC-CURSOR-TUPLE-FRACTION | .. _cursor_tuple_fraction: https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-CURSOR-TUPLE-FRACTION | ||||||
|  |  | ||||||
| .. _transaction-pooling-server-side-cursors: | .. _transaction-pooling-server-side-cursors: | ||||||
|  |  | ||||||
| @@ -244,8 +244,8 @@ If you need to specify such values, reset the sequence afterwards to avoid | |||||||
| reusing a value that's already in the table. The :djadmin:`sqlsequencereset` | reusing a value that's already in the table. The :djadmin:`sqlsequencereset` | ||||||
| management command generates the SQL statements to do that. | management command generates the SQL statements to do that. | ||||||
|  |  | ||||||
| .. _SERIAL data type: https://www.postgresql.org/docs/current/static/datatype-numeric.html#DATATYPE-SERIAL | .. _SERIAL data type: https://www.postgresql.org/docs/current/datatype-numeric.html#DATATYPE-SERIAL | ||||||
| .. _sequence: https://www.postgresql.org/docs/current/static/sql-createsequence.html | .. _sequence: https://www.postgresql.org/docs/current/sql-createsequence.html | ||||||
|  |  | ||||||
| Test database templates | Test database templates | ||||||
| ----------------------- | ----------------------- | ||||||
| @@ -253,13 +253,13 @@ Test database templates | |||||||
| You can use the :setting:`TEST['TEMPLATE'] <TEST_TEMPLATE>` setting to specify | You can use the :setting:`TEST['TEMPLATE'] <TEST_TEMPLATE>` setting to specify | ||||||
| a `template`_ (e.g. ``'template0'``) from which to create a test database. | a `template`_ (e.g. ``'template0'``) from which to create a test database. | ||||||
|  |  | ||||||
| .. _template: https://www.postgresql.org/docs/current/static/sql-createdatabase.html | .. _template: https://www.postgresql.org/docs/current/sql-createdatabase.html | ||||||
|  |  | ||||||
| Speeding up test execution with non-durable settings | Speeding up test execution with non-durable settings | ||||||
| ---------------------------------------------------- | ---------------------------------------------------- | ||||||
|  |  | ||||||
| You can speed up test execution times by `configuring PostgreSQL to be | You can speed up test execution times by `configuring PostgreSQL to be | ||||||
| non-durable <https://www.postgresql.org/docs/current/static/non-durability.html>`_. | non-durable <https://www.postgresql.org/docs/current/non-durability.html>`_. | ||||||
|  |  | ||||||
| .. warning:: | .. warning:: | ||||||
|  |  | ||||||
|   | |||||||
| @@ -81,7 +81,7 @@ in the same tablespace as the table. | |||||||
| .. versionadded:: 2.2 | .. versionadded:: 2.2 | ||||||
|  |  | ||||||
| The names of the `PostgreSQL operator classes | The names of the `PostgreSQL operator classes | ||||||
| <https://www.postgresql.org/docs/current/static/indexes-opclass.html>`_ to use for | <https://www.postgresql.org/docs/current/indexes-opclass.html>`_ to use for | ||||||
| this index. If you require a custom operator class, you must provide one for | this index. If you require a custom operator class, you must provide one for | ||||||
| each field in the index. | each field in the index. | ||||||
|  |  | ||||||
|   | |||||||
| @@ -804,7 +804,7 @@ object. If it's ``None``, Django uses the :ref:`current time zone | |||||||
|     - MySQL: load the time zone tables with `mysql_tzinfo_to_sql`_. |     - MySQL: load the time zone tables with `mysql_tzinfo_to_sql`_. | ||||||
|  |  | ||||||
|     .. _pytz: http://pytz.sourceforge.net/ |     .. _pytz: http://pytz.sourceforge.net/ | ||||||
|     .. _Time Zones: https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-TIMEZONES |     .. _Time Zones: https://www.postgresql.org/docs/current/datatype-datetime.html#DATATYPE-TIMEZONES | ||||||
|     .. _Choosing a Time Zone File: https://docs.oracle.com/en/database/oracle/ |     .. _Choosing a Time Zone File: https://docs.oracle.com/en/database/oracle/ | ||||||
|        oracle-database/18/nlspg/datetime-data-types-and-time-zone-support.html |        oracle-database/18/nlspg/datetime-data-types-and-time-zone-support.html | ||||||
|        #GUID-805AB986-DE12-4FEA-AF56-5AABCD2132DF |        #GUID-805AB986-DE12-4FEA-AF56-5AABCD2132DF | ||||||
|   | |||||||
| @@ -712,7 +712,7 @@ backend-specific. | |||||||
|  |  | ||||||
| Supported by the PostgreSQL_ (``postgresql``) and MySQL_ (``mysql``) backends. | Supported by the PostgreSQL_ (``postgresql``) and MySQL_ (``mysql``) backends. | ||||||
|  |  | ||||||
| .. _PostgreSQL: https://www.postgresql.org/docs/current/static/multibyte.html | .. _PostgreSQL: https://www.postgresql.org/docs/current/multibyte.html | ||||||
| .. _MySQL: https://dev.mysql.com/doc/refman/en/charset-database.html | .. _MySQL: https://dev.mysql.com/doc/refman/en/charset-database.html | ||||||
|  |  | ||||||
| .. setting:: TEST_COLLATION | .. setting:: TEST_COLLATION | ||||||
| @@ -793,7 +793,7 @@ This is a PostgreSQL-specific setting. | |||||||
| The name of a `template`_ (e.g. ``'template0'``) from which to create the test | The name of a `template`_ (e.g. ``'template0'``) from which to create the test | ||||||
| database. | database. | ||||||
|  |  | ||||||
| .. _template: https://www.postgresql.org/docs/current/static/sql-createdatabase.html | .. _template: https://www.postgresql.org/docs/current/sql-createdatabase.html | ||||||
|  |  | ||||||
| .. setting:: TEST_CREATE | .. setting:: TEST_CREATE | ||||||
|  |  | ||||||
|   | |||||||
| @@ -28,7 +28,7 @@ able to store certain characters in the database, and information will be lost. | |||||||
|   for internal encoding. |   for internal encoding. | ||||||
|  |  | ||||||
| .. _MySQL manual: https://dev.mysql.com/doc/refman/en/charset-database.html | .. _MySQL manual: https://dev.mysql.com/doc/refman/en/charset-database.html | ||||||
| .. _PostgreSQL manual: https://www.postgresql.org/docs/current/static/multibyte.html | .. _PostgreSQL manual: https://www.postgresql.org/docs/current/multibyte.html | ||||||
| .. _Oracle manual: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/index.html | .. _Oracle manual: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/index.html | ||||||
| .. _section 2: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/choosing-character-set.html | .. _section 2: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/choosing-character-set.html | ||||||
| .. _section 11: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/character-set-migration.html | .. _section 11: https://docs.oracle.com/en/database/oracle/oracle-database/18/nlspg/character-set-migration.html | ||||||
|   | |||||||
| @@ -190,7 +190,7 @@ of people with their ages calculated by the database:: | |||||||
| You can often avoid using raw SQL to compute annotations by instead using a | You can often avoid using raw SQL to compute annotations by instead using a | ||||||
| :ref:`Func() expression <func-expressions>`. | :ref:`Func() expression <func-expressions>`. | ||||||
|  |  | ||||||
| __ https://www.postgresql.org/docs/current/static/functions-datetime.html | __ https://www.postgresql.org/docs/current/functions-datetime.html | ||||||
|  |  | ||||||
| Passing parameters into ``raw()`` | Passing parameters into ``raw()`` | ||||||
| --------------------------------- | --------------------------------- | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user