2
我有一个HAS_ONE关系必须存在:的Rails输了球嵌套属性子上的形状误差
has_one :child, :dependent => :destroy
validates_presence_of :child
在我控制我建立孩子对新搭配:
@parent.build_child
当表单提交如果出现错误,渲染最终会丢失内置的孩子。这会导致我的fields_for为空,从而阻止用户输入所需的子字段。有任何想法吗?
你意识到'build_'方法不保存任何东西DB?你为什么期望你的孩子通过重定向被拯救?通常的方法是再次显示“编辑”视图并显示有关错误的信息。注意:'render',而不是'redirect_to'。因此,您的视图将填充您预期的不完整数据。 – jdoe 2012-04-25 15:44:26
我渲染不重定向。对不起,不清楚,我在帖子中改变了它。 – nfed 2012-04-25 16:18:34
所以你打电话给'@ parent.build_child',然后呢?你渲染一些视图来填充有关孩子的数据(该窗台不存储在数据库中)?填充表单的结果被传递给'children_controller#create',对吧?这是你试图通过“@ parent”访问你的“孩子”的地方吗? – jdoe 2012-04-25 16:46:20