PostgreSQL 特定的資料庫函式

所有這些函式都可從 django.contrib.postgres.functions 模組取得。

RandomUUID

class RandomUUID[原始碼]

傳回版本 4 的 UUID。

在 PostgreSQL < 13 上,必須安裝 pgcrypto 擴充套件。您可以使用 CryptoExtension 遷移操作來安裝它。

使用範例

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

TransactionNow

class 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>]>
回到頂端