改革 - 在嵌套表单范围内访问父表单参数

时间:2017-09-12 20:59:14

标签: ruby-on-rails ruby forms parameters reform

我正在使用Reform 1.2.6并且有一个带验证的嵌套表单

简化为:

class UserForm < Reform::Form
  property :date_of_birth

  property health_profile do
    property :diagnosed_with_condition_at

    validate :diagnosed_date

    def diagnosed_date
      # need to get access to date_of_birth here
      # validate that diagnosed_with_condition_at is after date of birth
    end
  end
end

Params正确嵌套,我只需要一种从嵌套表单访问父表单输入的方法。问题是嵌套表单似乎只能访问它的一组参数,而不是整个参数。

1 个答案:

答案 0 :(得分:1)

所以,基本上你真正需要的是使用Disposable :: Twin :: Parent功能。

require 'disposable/twin/parent'

class UserForm < Reform::Form

  feature Disposable::Twin::Parent

  property :date_of_birth

  property health_profile do
    property :diagnosed_with_condition_at

    validate :diagnosed_date

    def diagnosed_date
      self.parent.date_of_birth
    end
  end
end

另外,您可以阅读以下主题:https://github.com/apotonick/disposable/issues/61