in ruby you can do conditional block like so
block do |n|
puts n
end if foo == bar
which would translate into erb as
<% block do |n| %>
<%= n %>
&开发者_开发技巧lt;% end if foo == bar %>
is there a way to achieve this in haml other than wrapping the block in a condition?
- block do |n|
= n
- end if foo == bar
Haml does allow end
in this circumstance.
Please put the if
up front -- it makes it more readable:
- if foo == bar
- block do |n|
= n
And, if this occurs frequently, consider writing a custom Haml helper.
(I mentioned the GitHub Ruby Style guide above in a comment. If you search Google for 'ruby do end chaining' you'll see many style guides that recommend using that construct.)
精彩评论