跳到主要内容

共享包与示例

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演示如何为所有模型添加 updateIgnoreOnNotFounddeleteIgnoreOnNotFound 方法。

进一步探索

© . All rights reserved.