Rails-如何忽略嵌套对象的验证?

时间:2020-07-02 18:38:56

标签: ruby-on-rails

我有一张表格来收集有关医师的信息。每个医师可以有至少一个地址,但是医师也可以没有任何地址。

以下是我的 physician.rb model.rb 文件中定义相应模型的相关代码。

class Physician < ApplicationRecord
  belongs_to :address, optional: true
  accepts_nested_attributes_for :address

class Address < ApplicationRecord
  validates :line_1, presence: true
  validates :city, presence: true

地址具有一些必填字段,line_1city

我只想忽略医师表单中的presence要求。

我尝试使用optional: true标签(如上面的代码所示),但是没有成功。

1 个答案:

答案 0 :(得分:2)

您可能需要更改以下行

accepts_nested_attributes_for :address

accepts_nested_attributes_for :address, reject_if: :all_blank

因此,如果关联的Address对象的所有属性均保留为空白,则将被完全忽略。