ネストされたフォームを持ち、関係は次のようになります
class Inspection < ActiveRecord::Base
has_many :inspection_components
accepts_nested_attributes_for :inspection_components
class InspectionComponent < ActiveRecord::Base
belongs_to :inspection
InspectionComponent に入力された属性に依存するカスタム検証メソッドが Inspection にあります。検証方法 - InspectionComponent 属性が保存されていないか、Inspection の検証で使用できません。
ありがとう!
編集:物事をもう少し明確にするために、私がやろうとしていることの例を次に示します。
検査には属性ステータスがあります。InspectionComponent には属性 status もあります。
Inspection 編集フォームにはネストされた InspectionComponents があり、このフォームで各モデルのステータスを更新できます。@inspection.status は、すべての @inspection_component.status == 'complete' の場合にのみ 'complete' とマークできる必要があります。
したがって、@inspection を検証するときは、ユーザーが @inspection_component.status に入力した内容を確認できる必要があります。
明らかに、コントローラーの両方のインスタンスのパラメーターにアクセスできますが、検証が行われるモデルでは、これを行う方法がわかりません。
うまくいけば、それは明らかです、ありがとう。