1

我生成了一个 Stories 脚手架,现在当我在 stories/new 中时,我单击的按钮显示“创建故事”。我如何改变它的价值来表达别的东西,比如“创造故事”?

我已经进入了 stories/new.html.erb 和 stories/edit.html.erb,但所有这些都是

<%= render 'forms' %>

当我前往 stories/_form.html.erb 时,有一个

<div class="actions">
<%= f.submit class: "btn" %>
</div>

我知道你可以输入 <%= f.submit "Create Tale", class: "btn" %>,但如果我这样做,它会说“Create Tale”用于创建和更新。当我在故事/编辑中时,我怎么能说“更新故事”?

4

3 回答 3

2

要为其命名,请尝试:

<%= f.submit class: "btn", name: "Create Tale" %>

用于根据操作以不同方式命名它。我通常做的是将按钮名称从动作视图传递到表单模板中。例如在 new.html.erb 中:

<%= render partial: 'form', button_name: 'Create Widget' %>

在 edit.html.erb 中:

<%= render partial: 'form', button_name: "Update Widget" %>

通知:

<%= f.submit name: button_name %>

另一种方法是不要将提交按钮放在“表单”部分中,而是将它们保留在操作视图中,例如“new.html.erb”

<%= form_for @widget do |f| %>
   <%= render partial: 'form' %>
   <%= f.submit name: 'Create Widget' %>
<% end %>

对于“edit.html.erb”

<%= form_for @widget do |f| %>
   <%= render partial: 'form' %>
   <%= f.submit name: 'Update Widget' %>
<% end %>

注意:代码未经测试,可能有问题,但你得到了漂移......

于 2013-09-25T23:21:15.193 回答
1

直接在表单上工作(部分_form)

<%= f.submit "Submit", class:"btn"%>
于 2015-06-24T09:50:28.557 回答
-1

对于 Rails 5,更改:

在新视图和编辑视图中

同样的方式。然后在表单中使用:而不是
于 2017-02-13T12:43:55.987 回答