Rails 3构成了如何更改提交按钮上的文本

时间:2011-01-22 17:49:05

标签: ruby-on-rails-3

我已经列出了我的_form.html.erb文件,我想要做的是更改提交按钮上的文字我知道如何在html中执行此操作但不知道如何在Rails 3中执行此操作

%= form_for(@faq) do |f| %>
  <% if @faq.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(@faq.errors.count, "error") %> prohibited this faq from being saved:</h2>

      <ul>
      <% @faq.errors.full_messages.each do |msg| %>
        <li><%= msg %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

  <div class="field">
    <%= f.label :question %><br />
    <%= f.text_field :question %>
  </div>
  <div class="field">
    <%= f.label :answer %><br />
    <%= f.text_area :answer %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

10 个答案:

答案 0 :(得分:183)

而不是

<%= f.submit  %>

<%= f.submit "My Submit Text" %>

答案 1 :(得分:61)

如果要更改所有创建和更新表单提交标记,则可以轻松进行此更改。像这样修改config/locales/en.yml

en:
  helpers:
    submit:
      create: "Crear un %{model}"
      update: "Confirmar cambios al %{model} creado"

答案 2 :(得分:40)

在@ daniel的答案的基础上,您还可以在每个模型的基础上自定义提交标记值

en:
  helpers:
    submit:
      model_name:
        create: "Create"
        update: "Update"

然后在您的表单中,您可以使用:

<%= f.submit %>

有关文档,请参阅here(第二个示例。)

答案 3 :(得分:16)

您可以使用:

<%= f.submit 'Name of the submit button' %>

对于这样的问题,请考虑使用

中的可用文档

有时,像下面的谷歌搜索有助于:

答案 4 :(得分:6)

写入 erb

<%= f.submit "your text" %>

HAML

中写作时
= f.button :submit, "your text"

HAML 中,逗号应该在提交后存在,否则会抛出错误。

答案 5 :(得分:5)

我遇到了这个问题,我只需要这样翻译模型名称:

pt-br:
  activerecord:
    models:
      user:
        one: "Usuário"
        more: "Usuários"

这也将补充@ daniel的回答,它给了我一些遗漏的暗示。但是,我认为@ daniel的回答并不是必需的,因为它已经在rails-i18n

答案 6 :(得分:2)

有时使用帮助程序是不可接受的,因为使用过的文本或者您还需要添加类等,因此您可以直接覆盖value

<%= f.submit class: 'btn btn-primary', value: 'Login' %>

或:

<%= f.button :submit, class: 'btn btn-primary', value: 'Login' %>

顺便提一句, @ cassi.lup 在评论中接受了答案。

在Rails 4.2.3上测试。

答案 7 :(得分:1)

以防万一,我正在尝试这种情况:

f.submit t('conf.begin') class: 'btn btn-outline btn-success'

但是它没有用,解决方案是在课前用逗号(在开始时我并不明显):

f.submit t('conf.begin'), class: 'btn btn-outline btn-success'

干杯

答案 8 :(得分:1)

用于Slim版本 value =“ xyz” 更改默认的提交输入文本。

答案 9 :(得分:0)

简单,使用

<%= f.submit 'Desired text on the button' %>