Функции базы данных, специфичные для PostgreSQL
Все эти функции доступны из модуля django.contrib.postgres.functions.
RandomUUID
-
class RandomUUID[source]
Возвращает UUID версии 4.
Должен быть установлен расширение pgcrypto. Вы можете использовать миграцию CryptoExtension для его установки.
Пример использования:
>>> from django.contrib.postgres.functions import RandomUUID >>> Article.objects.update(uuid=RandomUUID())
TransactionNow
-
class TransactionNow[source]
Возвращает дату и время начала текущей транзакции на сервере базы данных. Если вы не находитесь в транзакции, возвращает дату и время текущего оператора. Это дополнение к django.db.models.functions.Now, которое возвращает дату и время текущего оператора.
Обратите внимание, что только внешний вызов atomic() устанавливает транзакцию и, таким образом, задаёт время, которое TransactionNow() вернёт; вложенные вызовы создают точки сохранения, которые не влияют на время транзакции.
Пример использования:
>>> from django.contrib.postgres.functions import TransactionNow >>> Article.objects.filter(published__lte=TransactionNow()) <QuerySet [<Article: How to Django>]>
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/2.2/ref/contrib/postgres/functions/