ruby-on-rails – 为什么f.label将’ALL’的字符串转换为’All’大写字母

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 为什么f.label将’ALL’的字符串转换为’All’大写字母前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个对象,其值都是大写,我希望f.label助手将其打印出来作为全部大写 – 无需进行CSS转换.

现在,如果我的对象中有字符串AAPL,f.label将其作为Aapl吐出.

我不想使用CSS转换的原因是因为对象的值不总是需要全部大写.我只是希望f.label完全按照它存储在db中的方式输出它 – 最好没有任何CSS shenanigans.

我怎么做?

解决方法

听起来好像在调用 humanize().这似乎发生了,当Rails将元素名称转换为标签标题时.您可能应该将标签的文本显式定义为表单元素.
<%= f.label(:aapl,'AAPL') %>

甚至

<%= f.label(:aapl,@yourVar) %>

另一个选择可能是Rails提供的翻译能力.这适用于Rails> 3.1!

在你看来:

<% form_for @post do |f| %>
  <%= f.label :title %>
  <%= f.text_field :title %>
  <%= f.submit %>
<% end %>

在你的en.yml中:

en:
  helpers:
    label:
      post:
        title: 'Your Title'

猜你在找的Ruby相关文章