【问题标题】:Parsing erb within erb in a view. How to add CSS class?在视图中解析 erb 内的 erb。如何添加 CSS 类?
【发布时间】:2014-02-06 11:48:48
【问题描述】:

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

<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>

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

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

【问题讨论】:

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


    【解决方案1】:

    也许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 %>
    

    【讨论】:

    • 添加内容标签会在视图中显示跨度标签,因为它已经在字符串中?
    • 我已将问题更新为更清晰。我需要 .count 方法周围的跨度,它显示一个整数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-30
    • 1970-01-01
    • 2019-06-29
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    相关资源
    最近更新 更多