rails:如何在haml

时间:2017-07-03 02:12:28

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

我想添加相同的内容,但为了SEO而在haml中指定一个不同的标签。 更具体地说,我希望标题在<h1>中为PostsController#index,但在其他页面上为<p>,因此我尝试使用

-if current_page?(controller: 'top', action: 'index') ? %h2 , %h3

但它不起作用,我认为%h2 %h3部分中的错误部分。

2 个答案:

答案 0 :(得分:1)

我对HAML并不熟悉,但也许这个?

- if current_page?(controller: 'top', action: 'index')
  %h2= some_variable_or_text
- else 
  %p= some_variable_or_text

答案 1 :(得分:1)

您可以使用haml_tag helper,如下所示:

- haml_tag current_page?(controller: 'top', action: 'index') ? :h2 : :h3 do
  Content here.

请注意,辅助参数是符号,使用:而不是%