Rails嵌套html帮助器

时间:2012-11-17 15:57:00

标签: html ruby-on-rails ruby helpers

我正在我的rails应用程序中创建一个帮助程序,我在其中创建导航链接。 现在我想在这个链接上添加一个插入符号,这样我就可以在最后得到一个漂亮的箭头。

我的HTML应该是这样的:

<li class='dropdown'>
   <a class='dropdown-toggle' data-toggle='dropdown' href='#'
       Dropdown
       <b class='caret'></b>
   </a>

现在我的助手设置如下:

  content_tag(:li, class: 'active dropdown') do
    link_to( text, link, class: 'dropdown-toggle' ) do
      content_tag(:b, class: 'caret')
    end
  end

但是当我这样做时,我收到了以下错误消息:

undefined method `stringify_keys' for "/":String

我还想在我的下拉列表中添加一些项目,所以我需要嵌套更多,但我不知道如何。有没有人可以帮助我并指出我正确的方向?

谢谢!

1 个答案:

答案 0 :(得分:3)

您正在将阻止传递给link_to,因此您不应将其传递给链接文字,如in the docs所示。试试这个:

content_tag(:li, class: 'active dropdown') do
  link_to(link, class: 'dropdown-toggle' ) do
    "#{text}#{content_tag(:b, "", class: 'caret')}".html_safe
  end
end