postgresql - Postgraphile 视图与函数
问题描述
最近,我开始使用 Postgraphile 来实现一个 API,以使用我目前正在开发的 react 应用程序。
随着我的应用程序的增长,我发现自己不断地编写带有智能注释的新视图,以创建对数据库的更复杂的查询。其中一些包括子查询、联合和合并语句。至于现在大约有 20 到 30 个视图,而且它变得越来越难以维护。
是否有任何替代方案仍然允许我使用 Postgraphile 的灵活性和强大功能,而无需不断编写越来越多的视图。
谢谢 :)
解决方案
PostGraphile 维护者在这里。在 PostGraphile 中工作时,我根本不使用视图(除了一些精心挑选的物化视图);相反,我使用 SQL 函数。与 PostGraphile 一起使用时,SQL 函数比视图具有许多优点:它们往往具有更高的性能(特别是当它们被内联时),它们可用于添加新的/更好的关系,它们尊重您的 RLS 策略/授权,它们可以如果您需要它们SECURITY DEFINER
(查看自定义查询和计算列
根据您要实现的目标,您还可以使用makeExtendSchemaPlugin
.
一个很好的建议来源是我们Discord 聊天的成员。
如果不知道您用视图解决了什么问题,很难进一步提出建议:)
推荐阅读
- python - python中数据框中的值聚类
- python - 来自本地机器的 Cloudera 火花连接
- python - 尝试绘制学习曲线时的问题
- java - 考虑在您的配置中定义“com.example.amazonsync.Service.IAmazonUtilService”类型的 bean
- c# - 如何从班级中获取最早/最早的年份值
- php - 从多维数组的子数组中删除不需要的元素
- java - 在 Java 中进行多线程时如何在 run 方法中传递参数
- r - 如何在R中的两个分类变量中获得百分比
- javascript - 我可以在哪里以及如何运行我的脚本以使其自主运行?(Javascript)
- android - 如何使用 okhttp 在回收站视图中进行无休止的滚动