ruby-on-rails – 验证嵌套属性的数量
发布时间:2020-12-17 03:51:22 所属栏目:百科 来源:网络整理
导读:我有一个嵌套属性的模型: class Foo ActiveRecord::Base has_many :bar accepts_nested_attributes_for :barend 它工作正常.但是我想确保每一个Foo,我至少有两个Bar. 我无法访问我的验证中的bar_attributes,所以我似乎无法验证它. 有没有干净的方法呢? 解
我有一个嵌套属性的模型:
class Foo < ActiveRecord::Base has_many :bar accepts_nested_attributes_for :bar end 它工作正常.但是我想确保每一个Foo,我至少有两个Bar. 有没有干净的方法呢? 解决方法class Foo < ActiveRecord::Base has_many :bars accepts_nested_attributes_for :bar def validate if self.bars.reject(&:marked_for_destruction?).length < 2 self.errors.add_to_base("Must have at least 2 bars") end end end 控制器将负责构建/更新条形图,因此您只需要查看是否有足够的条形图. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |