在视图中解析erb中的erb。如何添加CSS类?

时间:2014-02-06 11:48:48

标签: css ruby-on-rails twitter-bootstrap erb

我有一个导航栏,显示未读消息计数。未读计数必须在导航栏文本中进行格式化,因此我使用了以下内容:

<li><%= link_to "My Messages #{current_user.mailbox.receipts.where({:is_read => false}).count(:id, :distinct => true).to_s}", conversations_path, class: 'small button' %></li>

如何在计数中添加课程?我想添加bootstrap navbar-unread类。

我可以说:

<span class='navbar-nav'><%= current_user.mailbox.receipts.where(:is_read => false).count(:id, :distinct => true).to_s %></span> 

...在列表之外,但未读的计数不在正确的位置。

感谢您的帮助,无法在任何地方找到答案,或至少有更好的方法来做到这一点。

编辑:

我需要的html输出如下所示:

<li>
    <a class="small button" href="/converssations/link">
    My Messages<span class="navbar-unread">0</span>
    </a>
</li>

所以我需要将一个类传递到围绕ruby开始的'current_user.mailbox ...等等

显示未读消息的数量,这是按钮一角的一个小数字。

1 个答案:

答案 0 :(得分:0)

也许this可以帮到你。

同时查看ActionView Helpers参考。

<%= link_to content_tag(:span, "My Messages #{current_user.mailbox.receipts.where({:is_read => false}).count(:id, :distinct => true).to_s}", class: "navbar-nav"), conversations_path, class: "small button" %>

会有这样的输出

<a class="small button" href="/converssations/link">
    <span class="navbar-nav">My Messages Count</span>
</a>

要实现您提到的行为,您可以将一个块传递给link_to,就像这样

<%= link_to "#your_link", class: "small button" do %>
My Message <%= content_tag(:span, "1", class: "navbar-unread") %> 
<% end %>