当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 带条件的validates_associated模型

来源:互联网 收集:自由互联 发布时间:2021-06-23
我有以下validates_associated场景 class Parent include Mongoid::Document validates_associated :son validates_associated :daughterend 当我创建父母时,儿子或女儿中的任何一个都不会同时创建. 现在我的问题是,当我
我有以下validates_associated场景

class Parent
  include Mongoid::Document
  validates_associated :son
  validates_associated :daughter
end

当我创建父母时,儿子或女儿中的任何一个都不会同时创建.
现在我的问题是,当我尝试用子创建父级时,验证因子女验证而失败,反之亦然.

有什么方法可以在张贴儿子参数时只验证儿子,或者在张贴子参数时仅验证女儿

谢谢

您可以提供:if选项并测试相关文档是否存在:

class Parent
  include Mongoid::Document
  validates_associated :son, :if => Proc.new { |p| p.son.present? } 
  validates_associated :daughter, :if => Proc.new { |p| p.daughter.present? }
end
网友评论