共享包與示例
Prisma 官方擴充套件
以下是 Prisma 官方構建的擴充套件列表
| 擴充套件 | 描述 |
|---|---|
@prisma/extension-accelerate | 啟用 Accelerate,一個在 300 多個地點可用、內建連線池的全球資料庫快取 |
@prisma/extension-read-replicas | 為 Prisma Client 新增讀副本支援 |
Prisma 社群擴充套件
以下是社群建立的擴充套件列表。如果您想建立自己的包,請參閱共享 Prisma Client 擴充套件文件。
| 擴充套件 | 描述 |
|---|---|
prisma-extension-supabase-rls | 為 Prisma 新增對 Supabase 行級安全性的支援 |
prisma-extension-bark | 實現具化路徑模式,允許您輕鬆地在 Prisma 中建立和操作樹結構 |
prisma-cursorstream | 新增基於遊標的流式傳輸 |
prisma-gpt | 允許您使用自然語言查詢資料庫 |
prisma-extension-caching | 新增快取複雜查詢的能力 |
prisma-extension-cache-manager | 使用任何 cache-manager 相容快取來快取模型查詢 |
prisma-extension-random | 允許您查詢資料庫中的隨機行 |
prisma-paginate | 新增對讀查詢分頁的支援 |
prisma-extension-streamdal | 新增使用 Streamdal 進行程式碼原生資料管道的支援 |
prisma-rbac | 新增可定製的基於角色的訪問控制 |
prisma-extension-redis | 為使用 Redis 和 Dragonfly 資料庫進行高效快取和快取失效而設計的擴充套件 Prisma 擴充套件 |
prisma-cache-extension | 用於快取和使 Redis 快取失效的 Prisma 擴充套件(將支援其他儲存選項) |
prisma-extension-casl | 一個 Prisma 客戶端擴充套件,利用 CASL 在大多數簡單和巢狀查詢上強制執行授權邏輯。 |
prisma-emitter-extension | 一個 Prisma 擴充套件,用於根據可配置的監聽器在 CRUD 操作上發出事件。 |
如果您已經構建了一個擴充套件並希望將其展示出來,請隨時透過提交拉取請求將其新增到列表中。
示例
資訊
以下示例擴充套件僅作為示例提供,不作任何保證。它們旨在展示如何使用此處記錄的方法建立 Prisma Client 擴充套件。我們建議您將這些示例作為構建自己擴充套件的靈感來源。
| 示例 | 描述 |
|---|---|
audit-log-context | 提供當前使用者的 ID 作為 Postgres 審計日誌觸發器的上下文 |
callback-free-itx | 新增一個方法以在沒有回撥的情況下啟動互動式事務 |
computed-fields | 為結果物件新增虛擬/計算欄位 |
input-transformation | 轉換傳遞給 Prisma Client 查詢的輸入引數以過濾結果集 |
input-validation | 對傳遞給變異方法的輸入引數執行自定義驗證邏輯 |
instance-methods | 為結果物件新增類似 Active Record 的方法,例如 save() 和 delete() |
json-field-types | 對儲存在 JSON 列中的資料使用強型別執行時解析 |
model-filters | 新增可重用過濾器,這些過濾器可以組合成模型的複雜 where 條件 |
obfuscated-fields | 防止敏感資料(例如 password 欄位)包含在結果中 |
query-logging | 使用簡單的查詢計時和日誌記錄來包裝 Prisma Client 查詢 |
readonly-client | 建立一個只允許讀取操作的客戶端 |
retry-transactions | 為事務新增具有指數退避和抖動的重試機制 |
row-level-security | 使用 Postgres 行級安全策略來隔離多租戶應用的資料 |
static-methods | 為 Prisma Client 模型新增自定義查詢方法 |
transformed-fields | 演示如何使用結果擴充套件來轉換查詢結果併為應用新增國際化支援 |
exists-method | 演示如何為所有模型新增 exists 方法 |
update-delete-ignore-not-found | 演示如何為所有模型新增 updateIgnoreOnNotFound 和 deleteIgnoreOnNotFound 方法。 |
進一步探索
- 瞭解更多關於Prisma Client 擴充套件的資訊。