Fonctions de bases de données spécifiques à PostgreSQL

Toutes ces fonctions sont disponibles dans le module django.contrib.postgres.functions.

RandomUUID

class RandomUUID[source]

Renvoie un UUID version 4.

Exemple d’utilisation :

>>> from django.contrib.postgres.functions import RandomUUID
>>> Article.objects.update(uuid=RandomUUID())

TransactionNow

class TransactionNow[source]

Renvoie la date et l’heure du serveur de base de données au départ de la transaction actuelle. Si vous n’êtes pas dans une transaction, elle renvoie la date et l’heure de l’instruction en cours. Il s’agit d’un complément à django.db.models.functions.Now qui renvoie toujours la date et l’heure de l’instruction en cours.

Note that only the outermost call to atomic() sets up a transaction and thus sets the time that TransactionNow() will return; nested calls create savepoints which do not affect the transaction time.

Exemple d’utilisation :

>>> from django.contrib.postgres.functions import TransactionNow
>>> Article.objects.filter(published__lte=TransactionNow())
<QuerySet [<Article: How to Django>]>