我是HAML的新手。那么在HAML中呢?
-if @link.is_active
%a
-else
#custom-div
.custom-class
所以我想知道某些条件是否正确
<a><div id = "custom-div"><div class = "custom-class"></div></div></a>
如果它是假的:
<div id = "custom-div"><div class = "custom-class"></div></div>
没有复制块,我的意思不是这个:
-if @link.is_active
%a
#custom-div
.custom-class
-else
#custom-div
.custom-class
有任何建议吗?
答案 0 :(得分:1)
Haml 4.1.0.beta.1有一个haml_tag_if
helper。您可以像这样使用它:
- haml_tag_if @link.is_active, :a do
#custom-div
.custom-class
如果你不能使用4.1.0,你可以自己添加帮助,这很简单。这应该有效:
def haml_tag_if(condition, *tag)
if condition
haml_tag(*tag){ yield }
else
yield
end
end
答案 1 :(得分:1)
根据#custom-div .#custom-class
的实际复杂程度,您可以使用link_to_if
:
http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to_if
= link_to_if @link.is_active, "html safe linkable text here", "url to link to"