如何在部分内部注入HTML(使用HAML)

时间:2011-02-05 20:27:42

标签: ruby-on-rails haml partials

我有一个部分表示我想放在我的某些页面上的标题。但是,每个页面都有不同的标题。我想把这个标题“注入”部分。

这是我正在尝试做的事情,虽然它不起作用:

= render :partial => "section_head_top"
    %span( id= "section_head_header") Apply
    = render :partial => "section_head_divider"

Section_head_top部分代码:

  #section_head
      #section_head_top
          #section_head_content

我希望%span行位于section_head_content div中。对于我的代码之外的两行,我得到“语法错误,意外的keyword_ensure,期望$ end”(即使删除了底部的部分)。

这是怎么做到的?

谢谢!

1 个答案:

答案 0 :(得分:1)

我建议在你的局部使用局部变量。例如,如果您的部分代码看起来像这样(_section_head_top.haml):

- title ||= 'Default Header'
#section_head
  #section_head_top
    #section_head_content
    %span( id => "section_head_header")= title
    = render :partial => "section_head_divider"

你可以从你的代码中调用它:

= render :partial => "section_head_top", :locals => { :title => 'Apply' }