如何配置Pocketbase API规则:仅允许创建无重复值组合的记录
Pocketbase API 限制重复字段组合记录创建的配置方案
可以通过配置数据表的创建规则实现这个需求,核心是校验多字段值的组合唯一性,而非单字段判断。
你之前尝试的规则仅针对单个字段,要实现组合值不重复,应该使用以下规则:
NOT EXISTS(SELECT * FROM your_table_name WHERE value_1 = @request.data.value_1 AND value_2 = @request.data.value_2)
规则说明:
- 用
NOT EXISTS替代NOT IN更高效,只需判断是否存在完全匹配字段组合的现有记录 @request.data.value_1、@request.data.value_2会获取当前创建请求提交的对应字段值,与数据表中已存记录做比对- 替换
your_table_name为你的实际数据表名,value_1、value_2替换成需要做组合校验的字段名称
扩展说明:
如果需要校验3个及以上字段的组合唯一性,只需在WHERE条件后继续添加AND 字段名 = @request.data.字段名即可。
将上述规则填入对应数据表的「创建规则(Create Rule)」中,就能阻止重复字段组合的记录创建。
内容的提问来源于stack exchange,提问作者wafgawfwaf
相关产品推荐
相关产品推荐

