form_for中的标签

时间:2012-10-13 01:55:34

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2 form-for

在我的Rails 3.2项目中,我有一个表单可以在new.html.erb中的app/views/posts/中创建新帖子

<%= form_for(@post) do |post_form| %>
  ...
  <div class="field">
    <%= post_form.label :title %><br />
    <%= post_form.text_field :title %>
  </div>
 ...
  <div class="actions">
    <%= post_form.submit %>
  </div>
<% end %>

我想将title标签显示为TITLE,因此我将代码更改为post_form.label :TITLE %>,但仍显示Title。如何将其显示为TITLE

2 个答案:

答案 0 :(得分:3)

由于这是在屏幕上呈现而不是内容的问题,而不是在eruby代码中进行转换,这实际上应该在CSS中完成:

.field label {
  text-transform: uppercase;
}

如果您只想修改:title输入的标签而不是所有具有相同类别的标签,请添加其他类或使用CSS规则中的输入ID。

如果你坚持在Rails中包装它,请使用第二个参数.label

<%= post_form.label :title, :title.to_s.upcase %>

答案 1 :(得分:1)

您可以按如下方式修改表单标签:

<%= post_form.label(:title, "TITLE") %>

来源:http://guides.rubyonrails.org/form_helpers.html