我曾尝试使用raynb nested_form gem但不知何故它不起作用
这里是github存放处: https://github.com/ryanb/nested_form#non-asset-pipeline-setup
我用bundle insall安装了gem。
问题是: 1)它说你应该插入: // =需要jquery_nested_form 在application.js文件中,所以安装的js文件将起作用。 它没有 - 所以我自己安装它并把它放在js目录中。
2)基本上宝石在我把它搞砸后不起作用......
这是我的视图文件:
<%= form_for(:feast, :url=>{:action=>'create'}) do |f|%>
<%= f.label("feast time", :feast_time)%><br /><br />
<%= f.datetime_select(:feast_time, :order => [:day, :month ,:year]) %>
<br /><br />
<%= f.label("feast place", :feast_place)%><br /><br />
<%= f.text_field(:feast_place) %> <br /><br />
#this part is irrelevent to the question --------------------------------------------
<h2>participants
<u>
<%= link_to '#', :onclick => "add_par(); return false;",class: "right" do %>
<%= image_tag('add_participants.png', :size => '100x100', :alt => 'Photo
Gallery') %>
<%end%>
</u>
</h2>
<br /><br /><br />
<div id ="par">
</div>
## end of irrelevant block-----------------------------------------------
这是代码相关的块:
<%= f.fields_for :participations do |fp| %>
<%= fp.text_field :user_id %>
<%= fp.link_to_remove "Remove this user" %>
<% end %>
<p><%= f.link_to_add "Add a user", :participations %></p>
<%= submit_tag("start the feast") %>
基本上说它不起作用.... 为什么?捆绑安装还不足以安装gem?还有其他好的宝石可以添加 通过链接嵌套字段并通过链接删除?
答案 0 :(得分:0)
刚看了nested_form repo,就说了
Use the nested_form_for helper method to enable the nesting.
<%= nested_form_for @project do |f| %>
你正在使用rails form_for helper
。你应该有这样的东西:
<%= nested_form_for @feast do |f| %> #assuming you have @feast = Feast.new in your new action
此外 rails 4附带了接受嵌套属性功能,所以如果您只使用此gem来实现该功能,则不需要它。
答案 1 :(得分:0)
所以在这里:我尝试了2个插件而且它们没有工作所以我认为我在做一般形式的错误。
我使用匹配的路线。当我改为REST路线时,一切正常。
探测到之前的表格去除线:
{:action =&gt; 'create'})do | f | %GT; 缺少@feast变量,所以它可以附加嵌套部分。所以也许有一种方法来解决它,即使匹配的路线可能是这样的: {:action =&gt; 'create'})do | f | %GT;但是因为我改为REST路由它的工作,我不打算检查。