Rails默认只使用第一个单词的第一个字母,而不是我键入字符串

jam*_*mes 4 ruby-on-rails ruby-on-rails-4

只是好奇是否有关于这个的规则....以及如何解决它.基本上当我用一个字符串调用一个变量Daypack (<40L)或者`Tent(1-Person)'时,无论内容如何,​​视图中的输出只会将第一个单词的第一个字母大写.而我想要的是什么我键入要在视图中大写的大写字母.

在控制器中使用以下哈希:

@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"]
  }
Run Code Online (Sandbox Code Playgroud)

在视图中,我正在戏弄部分类别(露营),并且该类别中的项目(与露营相关联的数组)被分配给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 %>
Run Code Online (Sandbox Code Playgroud)

mea*_*gar 6

label_tag需要一个,两个或三个参数.如果你给它一个,它就是标签的名称,它会猜测标签的文本.如果要控制标记的文本,请为其指定两个参数:

<%= label_tag thing, thing %>
Run Code Online (Sandbox Code Playgroud)

文档:

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>
Run Code Online (Sandbox Code Playgroud)