Ruby on Rails - nested_form - 编辑操作不显示嵌套元素



我有一个nested_form,其中嵌套元素在表单中动态添加和删除,使用Javascript。

我已经为new动作准备了这整个部分-元素添加和销毁,并且所有内容都按原样保存。

访问edit操作时,我得到了正确的父元素,但子元素不显示 -相反,edit视图用挥之不去的(无益的)戏弄我。"添加选项"按钮。

我可能在哪里出错了?

试试gem cocoon,它真的很方便,可以为你照顾嵌套的javascript表单!!

链接http://www.dixis.com/?p=454〈nl

我遇到了完全相同的问题,并发现这取决于创建嵌套元素的"fields_for"块。例如,我有:

<%= nested_form_for(@recipe) do |f| %>
  # Stuff for parent...
  <% f.fields_for :recipe_ingredients do |ingredient_form| %>
    # Stuff for nested form...
  <% end %>
  # etc.

这一行需要是<%=块,而不是上面的<%块,即

<%= nested_form_for(@recipe) do |f| %>
  # Stuff for parent...
  # The following line has changed
  <%= f.fields_for :recipe_ingredients do |ingredient_form| %>
    # Stuff for nested form...
  <% end %>
  # etc.

这就是在编辑表单上打印现有嵌套属性所需的全部内容。

我有完全相同的问题(我严重掉了一些头发)。我很高兴地发现这个问题,其他人似乎都没有。我的解决方案是"微不足道的":我在Windows Box上从Rails 3.0.0升级到3.0.6(3.0.7带来了另一个问题)。

我没有进一步调查,因为它现在工作。我没有修改任何一行代码。也许这对你来说也是一个有效的修复。

请告诉我……

问候,德克

检查您的表单以编辑资源。
尝试在父窗体中使用实例变量,如下所示:

<%= form_for @parent_resource do |form| %>
   ... some field ...
<%= form.fields_for :children_resources do |f| %>
...
<% end %>

相关内容

  • 没有找到相关文章

最新更新