我对此感到有点疯狂,我有一个事件谁 has_many 服务员但我还没有能够在事件表单中动态创建,我有一个部分与表单的Attendant,这有效:
<%= form.fields_for :attendants do |form_attendant| %>
<%= render 'form_attendant', form_attendant: form_attendant %>
<% end %>
对于1名服务员,如果我复制粘贴它,它适用于2,依此类推..
我想要一个按钮为我做这件事,我已经阅读并试过了一个loooot。
选项1: 我已尝试在js中附加:
$("#attendants").append "<%= form.fie ... %>"
但它只是打印文本并且不会渲染部分内容,我已经尝试使用 escape_javascript 而没有运气。
我现在正在尝试:
<%= link_to "Agregar", new_attendant_path, remote: true %>
我有这些服务员/ new.js.erb
$('#attendants').append("<%= escape_javascript ( render partial: 'form_attendants' ) %>");
哪个实际有效并呈现部分但现在我不知道如何发送本地事件表单以便我可以制作 <{1}}在部分内部,
任何帮助都会受到赞赏,我几乎要哭了
答案 0 :(得分:1)
尝试nested_form_fields gem
= form_for @user do |f|
= f.nested_fields_for :videos do |ff|
= ff.remove_nested_fields_link
= ff.text_field :video_title
..
= f.add_nested_fields_link :videos
您可以更改 remove_nested_fields_link 和 add_nested_fields_link 的链接文字,添加类/属性等...
您还可以通过覆盖
来自定义添加/删除功能nested_form_fields.js.coffee 加入您的rails JavaScript资源
了解更多信息
https://github.com/ncri/nested_form_fields
<%= form_for @users do |f| %>
<%= f.fields_for :attendants do |form_attendant| %>
<%= render 'form_attendant', form_attendant: form_attendant %>
<% end %>
<%= f.add_nested_fields_link :attendants %>
<% end %>
partial _form_attendant.html.erb
<%= form_attendant.remove_nested_fields_link %>
<%= form_attendant.text_field :attd_date %>
<%= form_attendant.text_field :attd_time %>
答案 1 :(得分:0)
尝试使用cocoon gem它会做所有这些事情