如何将link_to中的text和ruby代码放在haml的同一行?

时间:2011-05-01 22:50:19

标签: ruby-on-rails ruby haml

我试图在link_to(之间设置一个)

= div_for review do
    = link_to review.title, review_path(review)
    (
    = link_to review.user.email, user_path(review.user)
    )

结果不是我想要的,因为它在括号和链接文本之间放置了空格,所以它看起来像:

 link1 ( link2 )

但我希望它看起来像:

 link1 (link2)

我如何使用haml?

3 个答案:

答案 0 :(得分:5)

我最近对haml有趣的事情

== - Ruby插值字符串

%h1== (#{link-to review.user.email, user_path(review.user)})

就像

%h1= raw "(#{link_to review.user.email, user_path(review.user)})"

答案 1 :(得分:4)

= link_to review.title, review_path(review)
= surround '(', ')' do
  = link_to review.user.email, user_path(review.user)

或者,您可以将链接放在span标记中,并告诉Haml吃掉空格:

(
%span>= link_to review.user.email, user_path(review.user)
)

答案 2 :(得分:3)

使用带有内联红宝石的字符串:

= link_to review.title, review_path(review)
=raw "(#{link_to review.user.email, user_path(review.user)})"

原始版仅适用于Rails 3(及更高版本)。