更改f.label生成的自动文本

时间:2011-07-09 19:21:47

标签: html ruby-on-rails forms text label

我有代码

<%= form_for(@user) do |f| %>
    <div>
    <%= f.label :email, :class=>'inline betaLabelTextField' %>
    <%= f.text_field :email, :class=>'betaTextField' %>
    </div>
<% end %>

问题是此代码会自动生成html

<div> 
        <label class="inline betaLabelTextField" for="user_email">Email</label> 
        <input class="betaTextField" id="user_email" name="user[email]" size="30" type="text" /> 
    </div> 

在表格内。如何将“电子邮件”更改为“电子邮件地址”?

2 个答案:

答案 0 :(得分:23)

最简单的方法是改为:

<%= form_for(@user) do |f| %>
    <div>
    <%= f.label :email, "Email Address", :class=>'inline betaLabelTextField' %>
    <%= f.text_field :email, :class=>'betaTextField' %>
    </div>
<% end %>

答案 1 :(得分:7)

这是通过向config / locale / en.yml添加适当的i18n值来完成的。请查看http://guides.rubyonrails.org/i18n.html#translations-for-active-record-models处的指南,了解有关活动记录值的文件格式。