如何将 class 分配给 number_to_percentage?
How can I assign a class to a number_to_percentage?
我有以下代码:
<%= number_to_percentage(a.number, precision: 1) %>
如何给该元素一个 class 或 id?
<%= number_to_percentage(a.number, precision: 1), class: "number" %>
returns 一个错误并且
<%= number_to_percentage(a.number, precision: 1, class: "number") %>
什么都不做。我也不想将它包装在 div.
中
查看 number_to_percentage docs,没有 class
或 id
的选项,您必须将其包裹在跨度或 div 中。
number_to_percentage
没有 return 标签。它 return 是一个简单的字符串。如果你想用 class 将它包装在标签中,你需要手动执行此操作:
<div class="number"><%= number_to_percentage(a.number, precision: 1) %></div>
对于您的视图,您可以编写一个辅助方法。它们对于让您的代码保持干燥非常有用。
在你的application_helper.rb
def fancy_percentage(number, precision, options={})
content_tag(:div, number_to_percentage(number, precision: precision), options)
end
"options" 将保持为空,直到您将它用于某些事情。 id: 'something'
因此您可以在您的视图中像这样使用它:
<%= fancy_percentage(a.number, 1, id: 'something_particular', class: 'number' ) %>
我会说这是一个非常灵活的解决方案。我用它所有的时间。
我有以下代码:
<%= number_to_percentage(a.number, precision: 1) %>
如何给该元素一个 class 或 id?
<%= number_to_percentage(a.number, precision: 1), class: "number" %>
returns 一个错误并且
<%= number_to_percentage(a.number, precision: 1, class: "number") %>
什么都不做。我也不想将它包装在 div.
中查看 number_to_percentage docs,没有 class
或 id
的选项,您必须将其包裹在跨度或 div 中。
number_to_percentage
没有 return 标签。它 return 是一个简单的字符串。如果你想用 class 将它包装在标签中,你需要手动执行此操作:
<div class="number"><%= number_to_percentage(a.number, precision: 1) %></div>
对于您的视图,您可以编写一个辅助方法。它们对于让您的代码保持干燥非常有用。
在你的application_helper.rb
def fancy_percentage(number, precision, options={})
content_tag(:div, number_to_percentage(number, precision: precision), options)
end
"options" 将保持为空,直到您将它用于某些事情。 id: 'something'
因此您可以在您的视图中像这样使用它:
<%= fancy_percentage(a.number, 1, id: 'something_particular', class: 'number' ) %>
我会说这是一个非常灵活的解决方案。我用它所有的时间。