【问题标题】:Add content tag span in link_to in my helper function rails在我的辅助函数 rails 中的 link_to 中添加内容标签跨度
【发布时间】:2015-09-08 08:43:28
【问题描述】:

嗨,伙计们,我想在现有函数中添加 content_tag 跨度,但我不知道如何在此函数中添加。这是我的辅助函数

 def taxons_tree_products_list_mobile(root_taxon, current_taxon, max_level = 1)
  return '' if max_level < 1 || root_taxon.children.empty?
  content_tag :ul, class: 'nav nav-pills nav-stacked' do
    root_taxon.children.map do |taxon|
      content_tag :li do
        link_to (taxon.name, seo_url(taxon)) +
        taxons_tree(taxon, current_taxon, max_level - 1)
      end
    end.join().html_safe
  end
end

而这个辅助函数 return HTML 就是这样的

<ul class="nav nav-pills nav-stacked">
  <li><a href="/t/categories/bags">Bags</a></li>
  <li><a href="/t/categories/mugs">Mugs</a></li>
  <li><a href="/t/categories/clothing">Clothing</a></li>
</ul>

但我想要那样的 HTML

 <ul class="nav nav-pills nav-stacked">
  <li><a href="/t/categories/bags"><span class="pull-right">(50)</span>Bags</a></li>
  <li><a href="/t/categories/mugs"><span class="pull-right">(50)</span>Mugs</a></li>
  <li><a href="/t/categories/clothing"><span class="pull-right">(50)</span>Clothing</a></li>
</ul>

所以请有人帮我看看如何在我的 Helper 函数中添加这个 span。感谢您的帮助

谢谢

【问题讨论】:

    标签: html ruby ruby-on-rails-4


    【解决方案1】:

    试试这个:

      content_tag :li do
        concat link_to(seo_url(taxon)) do 
           content_tag(:span, '(50)', class: 'pull-right') + taxon.name
        end
        concat taxons_tree(taxon, current_taxon, max_level - 1)
      end
    

    更新:修复了代码。我不知道taxons_tree(...) 代码返回什么,但为了正确工作,它应该是一些字符串值。

    【讨论】:

    • 感谢您的回复,我试过了,但它给出了错误语法错误,意外'+' .....在这里“end +”。
    • 但是当我删除这一行 "+ taxons_tree(taxon, current_taxon, max_level - 1)" 它给出了正确的 html 。所以我们非常接近解决方案。
    • @QubaishBhatti 你能修复错误吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多