添加一个按钮到<%= link_to_add_fields“Add A Present”,f,:present%>在Rails?

时间:2012-06-22 08:48:43

标签: css ruby-on-rails forms button

我无法弄清楚如何在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" %>

提前致谢。

2 个答案:

答案 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", "")})