ruby-on-rails - Rails 默认只大写第一个单词的第一个字母,而不是我输入的字符串

标签 ruby-on-rails ruby-on-rails-4

只是好奇是否有关于此的规则......以及如何解决它。基本上,当我使用 Daypack (<40L) 的字符串调用变量时或`Tent (1-Person)",例如,无论内容如何,​​ View 中的输出只将第一个单词的第一个字母大写。我想要的是我在 View 中输入的任何大写字母都大写。

在 Controller 中使用以下哈希:

@itemlist = {
  "Camping" => ["Tent (1-person)", "Tent (2-person)", "Tent (3-person)", "Tent (4-person)", "Tent (6-person)", "Tent (8-person)", "Sleeping bag", "Sleeping pad", "Camp pillow", "Daypack (<40L)", "Daypack cover"]
  }

在 View 中,我将类别(露营)和该类别中的项目(与露营关联的数组)分配给 label_tags。这就是大写困惑的地方。
<% @itemlist.each do |category, list| %>
  <div class="col-xs-4">
    <div class="form-group" style="font-size:80%">
      <h5> <%="#{category}"%> </h5>
        <% list.each do |thing| %>
            <%= label_tag "#{thing}" %>
          </br>
        <% end %>
    </div>
  </div>  
<% end %>

最佳答案

label_tag需要一个、两个或三个参数。如果你给它一个,它是标签的名称,它会猜测标签的文本。如果你想控制标签的文本,给它两个参数:

<%= label_tag thing, thing %>

来自 the documentation :
label_tag 'name'
# => <label for="name">Name</label>

label_tag 'name', 'Your name'
# => <label for="name">Your name</label>

label_tag 'name', nil, class: 'small_label'
# => <label for="name" class="small_label">Name</label>

关于ruby-on-rails - Rails 默认只大写第一个单词的第一个字母,而不是我输入的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24501116/

相关文章:

ruby-on-rails - 将 Rails 模型文件组织到子目录中

ruby-on-rails - Rails - 如何使用 Spree Commerce Sandbox 获取示例数据

ruby-on-rails - 通过 Nginx 代理时使用 OmniAuth 时出现 CallbackError

javascript - Rails 4 ajax 在点击提交后不刷新

ruby-on-rails - 如何在文本字段rails postgresql中查询json数据

ruby-on-rails - 允许在 DeviseTokenAuth 强参数中传递一个数组

ruby-on-rails - 文件未出现在 Heroku 中 - 浏览 Heroku 内容

ruby-on-rails - 从 Rails 4 中的 Controller 操作设置 Sass 变量

ruby-on-rails - 如何使用 rspec 测试路由约束

ruby-on-rails - rails 4.2 : Eager-loading has_many relation with STI