PostgreSQL 特定的資料庫函式¶
所有這些函式都可從 django.contrib.postgres.functions
模組取得。
RandomUUID
¶
傳回版本 4 的 UUID。
在 PostgreSQL < 13 上,必須安裝 pgcrypto 擴充套件。您可以使用 CryptoExtension
遷移操作來安裝它。
使用範例
>>> from django.contrib.postgres.functions import RandomUUID
>>> Article.objects.update(uuid=RandomUUID())
TransactionNow
¶
傳回資料庫伺服器上目前交易開始的日期和時間。如果您不在交易中,它將傳回目前陳述式的日期和時間。這是對 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>]>