haml:link_to 嵌套标签

haml: link_to nested tags

我的 haml 解析此代码时遇到问题:

-if link.user == current_user 
  %div{:class => "links-group d-inline"}
    = link_to "edit", edit_link_path(link) do
      = octicon("pencil", :height => 16, :class => "d-inline mt-1")
    = link_to 'destroy', link, method: :delete, data: { confirm: 'Are you sure?' }

undefined method `stringify_keys' for "/links/1183/edit":String

当我删除这一行时= octicon("pencil", :height => 16, :class => "d-inline mt-1")一切正常。

如何解决这个问题?

如果您将块传递给 link_to,那么您也不需要将标签传递给它来显示。 例如

= link_to edit_link_path(link) do
  = octicon("pencil", :height => 16, :class => "d-inline mt-1")

= link_to "edit", edit_link_path(link)

但不是两者的结合...:)

这是 link_to 的 API 文档,其中提供了更好的示例: http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to

你也可以看看下面的样子-

link_to(options = {}, html_options = {}) do
  # name
end

OR

link_to(url, html_options = {}) do
  # name
end