探索 Prisma ORM 5.16.0 中强大的新功能,它可以让你全局或局部地从查询中省略特定字段。无论是需要确保敏感信息(如密码)永不暴露,还是希望简化单个查询的数据检索,Prisma ORM 都能满足你的需求。在这篇博客文章中,我们将通过代码示例和指导,教你如何增强数据管理。
Prisma ORM 5.16.0 很高兴推出一种从 Prisma Client 查询中省略字段的全局方式!这项备受期待的功能直接受到了社区通过 GitHub 问题反馈以及对我们 omitApi 预览功能原始实现的反馈。非常感谢所有帮助我们继续开发这项功能的人!
我们相信此版本有助于满足开发人员在性能、体验、安全性和隐私之间取得平衡的需求。请继续阅读,我们将使用此功能来简化你在查询结果中管理敏感数据的方式。
Prisma ORM 5.16.0 中省略字段
借助最初随 Prisma ORM 5.13.0 发布的新 omitApi 预览功能,你现在可以在现有 select 功能旁边或在 Prisma Client 初始化时从查询中 omit 字段。你可以选择全局省略字段,例如用户密码,或按查询定义要省略的字段,例如并非所有视图都必需的字段。现在,只需向前端发送所需数据比以往任何时候都更容易。
如何全局省略字段
在 Prisma Client 初始化时,你可以将字段标记为“已省略”。这意味着对于该 Prisma Client 实例上的任何查询,这些字段将永不返回。例如,你可以初始化 Prisma Client 并始终 omit 用户密码。
如果你想重新包含一个全局省略的字段,这可以在单个查询级别进行覆盖。
如何局部省略字段
最初在 Prisma ORM 5.13.0 中发布的 omitApi 预览功能的按查询版本也可用。此功能允许你在按查询级别 omit 字段,类似于你使用 select 的方式。
现在你可以灵活地全局省略一个字段,并且只在特定情况下选择它,反之亦然!
何时省略字段
现在有两种省略字段的方法,最常见的问题是“我应该何时使用每种方法?”
如果你担心安全或暴露敏感信息,在大多数情况下你会想使用全局省略。这将保证新编写的查询不会无意中包含敏感数据。一个很好的用例是始终省略用户密码。
但是,如果你担心数据优化,你会想使用局部省略。这将允许你在大多数查询中继续使用模型上的所有字段,然后在数据传输量是一个问题时缩小模型。例如,如果你的表中的每列数据都很轻,但有一列包含大量 JSON 或 Blob 数据,你可以轻松排除该列,这样你的应用程序就不必为每个请求传输所有这些数据。
我们希望你持续的反馈!
全局省略字段的功能是我们最需要的功能,我们很高兴将其包含在我们的 5.16.0 版本中。如果你有任何反馈,请随时添加到我们的专门的 GitHub 讨论。到目前为止,我们已经就我们的 omitApi 预览功能进行了很好的讨论,我们很高兴能继续这些讨论。
不要错过下一篇文章!
订阅 Prisma 新闻通讯