gpt4 book ai didi

ruby-on-rails-3 - Rails 3 validates_uniqueness_of与:scope生成无效的SQL?

转载 作者:行者123 更新时间:2023-12-03 19:07:11 24 4
gpt4 key购买 nike

有两个记录一些每月统计数据的模型,而我正在尝试使用以下方法在该模型内强制执行复合键约束:

validates_uniqueness_of :entity_id, :scope => [:year, :month]


尝试在记录上运行 .valid?方法时,我不断收到错误消息,因为显然ActiveRecord正在生成不正确的SQL。

SQLite3::SQLException: near "FROM": syntax error: SELECT      FROM       "table"  WHERE     ("table"."entity_id" = 1) AND ("table"."year" = 2007) AND ("table"."month" = 6) LIMIT 1


请注意,上面Rails并未在select语句中添加*,因此SQLite正确地引发了错误。

如果我在这里做错了什么主意吗?

最佳答案

试试这个

validates :entity_id, :uniqueness => {:scope => [:year, :month]}


你可能想要

:presence => true 

关于ruby-on-rails-3 - Rails 3 validates_uniqueness_of与:scope生成无效的SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4808592/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com