我无法弄清楚如何在link_to_add_fields中添加按钮,如
<%= link_to_add_fields "Add A Present", f, :presents %>
在我正在制作的Rails应用程序中。
我尝试在任何地方添加class: "btn btn-mini btn-info"
,但我不断收到有关参数数量的错误。
例如在这一行中起作用:
<%= f.link_to_remove "Remove this present", class: "btn btn-mini btn-info" %>
提前致谢。
答案 0 :(得分:6)
我假设你是从导演剧集http://railscasts.com/episodes/197-nested-model-form-part-2制作了这个帮手。
在您的application_helper.rb中,您已定义link_to_add_fields。可能是这样的。
def link_to_add_fields(name, f, association)
将其更改为此
def link_to_add_fields(name, f, association, locals={})
然后在返回声明中。
link_to_function(name, "add_fields(this, \"#{association}\", \"#{escape_javascript(fields)}\")", class: locals[:class])
最后,使用你的新方法
<%= link_to_add_fields "Add A Present", f, :presents, class: "btn btn-mini btn-info" %>
答案 1 :(得分:0)
根据@ Aeisme的回复,我不得不为Rails 4.1用户共同解决问题。
application_helper.rb
def link_to_add_fields(name, f, association, locals={})
link_to_add_fields函数的返回值
link_to(name, '#', class: [locals[:class], "add_fields"], data: {id: id, fields: fields.gsub("\n", "")})