加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails AR对多态关系有效验证_uniqueness_of

发布时间:2020-12-16 22:29:54 所属栏目:百科 来源:网络整理
导读:验证子模型的属性范围对多态关系的唯一性是否可行? 例如我有一个名为field的模型属于可现场的: class Field ActiveRecord::Base belongs_to :fieldable,:polymorphic = :true validates_uniqueness_of :name,:scope = :fieldable_idend 我有其他几个模型(
验证子模型的属性范围对多态关系的唯一性是否可行?

例如我有一个名为field的模型属于可现场的:

class Field < ActiveRecord::Base
  belongs_to :fieldable,:polymorphic => :true
  validates_uniqueness_of :name,:scope => :fieldable_id
end

我有其他几个模型(页面,项目)有很多字段.所以我想要的是验证字段名称对父模型的唯一性,但问题是偶尔一个页面和一个项目共享相同的ID号,导致验证失败,当他们不应该.

我只是这样做错了,还是有更好的方法呢?

解决方法

只需扩大范围以包括现场类型:
class Field < ActiveRecord::Base
  belongs_to :fieldable,:scope => [:fieldable_id,:fieldable_type]
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读