Rails 单页面嵌套 form 如何实现,js & gem

as181920 · March 21, 2013 · Last by yeyong14 replied at November 25, 2013 · 3211 hits

传统如下

<%= form_for @project do |f|%>
 <%=f.fields_for :tasks do |ff|%>
  <%end%>
<%end%>

对于固定有多少个 task 的情况,这样就可以了;

对于可能有多个,页面上可以动态添加的,加了 gem nested_form,变成

<%= nested_form_for @project do |f|%>
 <%=f.fields_for :tasks do |ff|%>
    <%=ff.link_to_add "", :tasks%>
  <%end%>
<%end%>

这样也就搞定了,用这个 gem 是因为自己对 js 不熟,大致看了下自己写 js 也好多代码

问题如下,当嵌套里面还有嵌套一个的时候,靠这个 gem 就实现不了了

<%= nested_form_for @project do |f|%>
 <%=f.fields_for :tasks do |ff|%>
      <%=ff.fields_for :info do |fff|%>
      <%end%>
    <%=ff.link_to_add "", :tasks%>
  <%end%>
<%end%>

这样里面再嵌套的这个,通过 gem 的 js 就不会自动添加出来,有解决方法么?

偶滴神阿,偶尔想问个正经问题,这么快就沉了。看来下次要换个诱惑点的标题了

#2 楼 @huacnlee 和预计的一样,自己动手写 js 是能实现的,我比较懒(太多代码也不好维护)所以想用 197 最后提到的那个 gem,结果用 gem 遇到问题,就是我上面要问的问题。

所以问题还是没解决。临时赶时间取消多层嵌套处理了。下次遇到要么手写要么还得仔细看看这个 gem 有没有方法(它的 issues 里面有提到,也没找到解决方法)

ps,唉,年轻人有大把时间学习真是无比幸福啊

回复错了

You need to Sign in before reply, if you don't have an account, please Sign up first.