rails 多个方法中的方法

rails method from multiple methods

所以我的 Rails 演示器中有这段代码(类似于 Draper gem):

  def title
    h.link_to 'Favor', favor_path(@favor) + asked_or_published? + user_link
  end

  def asked_or_published?
    if asked_favor?
      h.content_tag(:p, "published by")
    elsif published_favor?
      h.content_tag(:p, "asked by")
    end 
  end

  def user_link
    h.link_to @favor.favor_asker.firstname, h.user_path(@favor.favor_asker)
  end

我正在调用我认为的 title 方法。问题是只调用此方法 returns link_to 'Favor' 部分而不是其余部分。这是为什么?

提前致谢!

这是一个分组优先级问题,+ asked_or_published? + user_link 位被添加到 favor_path(@favor) 生成的路径中。不确定它们是否也被正确转义,但这无关紧要。

替换为:

h.link_to 'Favor', favor_path(@favor) + asked_or_published? + user_link

与:

h.link_to('Favor', favor_path(@favor)) + asked_or_published? + user_link