我的表单可让您通过输入孩子的名字在与父母相同的表单上创建一个“孩子”。
我只想保存子记录(如果提供了名称)。换句话说,我不想保存一个名字空白的孩子。我只想在提供名称的情况下创建子对象。
有什么好方法吗?
根据文档:
:reject_if
允许您指定Proc或Symbol指向一种方法,该方法检查是否应为特定属性哈希构建记录。哈希将传递到提供的Proc或方法中,并且应返回true或false。如果未指定:reject_if,则将为所有不具有_destroy值且其值为true的属性哈希构建记录。传递:all_blank而不是Proc将创建一个proc,该proc将拒绝一条记录,其中所有属性均为空白,不包括_destroy的任何值。
因此,我们需要:
类Parent <ActiveRecord :: Base
has_many :kids
accepts_nested_attributes_for :kids, :reject_if => proc { |attributes| attributes[:name].blank? }
end
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句