2012-02-04 24 views
5

我试图让我的元描述在HAML中工作,我尝试的所有东西都会产生错误。HAML中的元描述与外部变量

%meta{:name => "description", :content => "Some content"}/ 
%title 
    = data.page.title 

上面的代码工作。现在我尝试以下操作:

%meta{:name => "description", :content => 
    = data.page.desc 
    }/ 
%title 
    = data.page.title 

而且我在第一行发现不平衡的括号错误。我究竟做错了什么?

+1

仅供参考,这里创建了不平衡的括号错误,因为HAML只允许逗号后面的换行符 – 2013-08-02 11:18:35

回答

16

在HAML中,用于指定元素属性的散列可以包含有效的Ruby代码,因此您无需使用=来评估Ruby表达式。因此,你要寻找的代码很简单:

%meta{:name => "description", :content => data.page.desc} 

请注意,您不需要一个/追加到%meta元素声明的结尾,因为HAML会自动把它当作一个自闭标签,如imgbr