我已经列出了我的_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 %>
Run Code Online (Sandbox Code Playgroud)
And*_*i S 186
代替
<%= f.submit %>
Run Code Online (Sandbox Code Playgroud)
放
<%= f.submit "My Submit Text" %>
Run Code Online (Sandbox Code Playgroud)
小智 63
如果要更改所有创建和更新表单提交标记,则可以轻松进行此更改.修改config/locales/en.yml如下:
en:
helpers:
submit:
create: "Crear un %{model}"
update: "Confirmar cambios al %{model} creado"
Run Code Online (Sandbox Code Playgroud)
Nat*_*Kot 42
基于@ daniel的答案,您还可以基于每个模型自定义提交标记值:
en:
helpers:
submit:
model_name:
create: "Create"
update: "Update"
Run Code Online (Sandbox Code Playgroud)
然后在您的表单中,您可以使用:
<%= f.submit %>
Run Code Online (Sandbox Code Playgroud)
请参阅此处获取文档(第二个示例.)
tom*_*rte 16
您可以使用:
<%= f.submit 'Name of the submit button' %>
Run Code Online (Sandbox Code Playgroud)
对于这样的问题,请考虑使用可用的文档
有时,像下面的谷歌搜索有助于:
写在 erb中时
<%= f.submit "your text" %>
在HAML写作时
= f.button :submit, "your text"
Run Code Online (Sandbox Code Playgroud)
在HAML中,逗号应该在提交后存在,否则会抛出错误.
我有这个问题,我只需要这样翻译模型名称:
pt-br:
activerecord:
models:
user:
one: "Usuário"
more: "Usuários"
Run Code Online (Sandbox Code Playgroud)
这也将补充@ daniel的回答,它给了我一些缺失的暗示.但是,我认为@ daniel的回答并不是必需的,因为它已经在rails-i18n上了