私はHAMLを学び始めました:そしてフラッシュブロックをHAMLに変換できません:
<% flash.each do |key, value| %>
<div class="alert alert-<%= key %>">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><%= value %></strong>
</div>
<% end %>
私はHAMLを学び始めました:そしてフラッシュブロックをHAMLに変換できません:
<% flash.each do |key, value| %>
<div class="alert alert-<%= key %>">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><%= value %></strong>
</div>
<% end %>
どうぞ:
= flash.each do |key, value|
.alert{ :class => "alert-#{key}" }
%button.close{ :data => { :dismiss => "alert" } } x
%strong
= value
参考までに、宣言の後にハッシュとして属性を添付することで、任意の要素に属性を追加できます。クラスまたはIDだけで要素を指定しない場合、HAMLはその要素を指定されたクラスまたはIDのdivにします。しかし、これは多くの方法で行うことができます。たとえば、これらはすべて同じです。
%div{:class => 'foo bar', :id => 'test' }
.foo{:class => 'bar', :id => 'test'}
#test.bar{:class => 'foo'}
#test.foo.bar
すべての出力:<div class="foo bar" id="test"></div>
ただし、計算された属性をハッシュに入れる必要があります。
- klass = "bar"
%div{ :class => klass }
出力:<div class="bar"></div>
また、上記のすべての例で、は次の:attribute => 'value'
ように表すことができることに注意してくださいattribute: 'value'
。
%button.close{ data: { dismiss: 'alert' } } x
お役に立てば幸いです。