diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt index a9da1dcf7e..641ef0dd79 100644 --- a/docs/ref/models/querysets.txt +++ b/docs/ref/models/querysets.txt @@ -712,6 +712,14 @@ You can also refer to fields on related models with reverse relations through pronounced if you include multiple such fields in your ``values()`` query, in which case all possible combinations will be returned. +.. admonition:: Special values for ``JSONField`` on SQLite + + Due to the way the ``JSON_EXTRACT`` and ``JSON_TYPE`` SQL functions are + implemented on SQLite, and lack of the ``BOOLEAN`` data type, + ``values()`` will return ``True``, ``False``, and ``None`` instead of + ``"true"``, ``"false"``, and ``"null"`` strings for + :class:`~django.db.models.JSONField` key transforms. + ``values_list()`` ~~~~~~~~~~~~~~~~~ @@ -782,6 +790,14 @@ not having any author:: >>> Entry.objects.values_list('authors') +.. admonition:: Special values for ``JSONField`` on SQLite + + Due to the way the ``JSON_EXTRACT`` and ``JSON_TYPE`` SQL functions are + implemented on SQLite, and lack of the ``BOOLEAN`` data type, + ``values_list()`` will return ``True``, ``False``, and ``None`` instead of + ``"true"``, ``"false"``, and ``"null"`` strings for + :class:`~django.db.models.JSONField` key transforms. + ``dates()`` ~~~~~~~~~~~ diff --git a/docs/topics/db/queries.txt b/docs/topics/db/queries.txt index 2d43e7ee32..d256545453 100644 --- a/docs/topics/db/queries.txt +++ b/docs/topics/db/queries.txt @@ -1091,6 +1091,12 @@ To query for missing keys, use the ``isnull`` lookup:: On PostgreSQL, if only one key or index is used, the SQL operator ``->`` is used. If multiple operators are used then the ``#>`` operator is used. +.. admonition:: SQLite users + + On SQLite, ``"true"``, ``"false"``, and ``"null"`` string values will + always be interpreted as ``True``, ``False``, and JSON ``null`` + respectively. + .. _containment-and-key-lookups: Containment and key lookups