Rails在表单错误时丢失嵌套属性子项

时间:2012-04-25 15:34:56

标签: ruby-on-rails forms nested-attributes

我有一个必须存在的has_one关系:

has_one :child, :dependent => :destroy
validates_presence_of :child

在我的控制器中,我使用以下内容构建了新的孩子:

@parent.build_child

当提交表单时出错,渲染最终会丢失已构建的子项。这导致我的fields_for为空,从而阻止用户输入所需的子字段。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

想出来:

before_filter :build_child, :only => [:new, :edit]

应该是:

before_filter :build_child, :only => [:new, :edit, :create, :update]