Ruby on Rails Flash messages e Bootstrap
E chega aquele momento em que você percebe que os nomes do níveis de flash messages do Rails não batem 100% com as classes alert-* do Twitter Bootstrap.
A solução é criar um help para fazer um de-para das classes, adicionando o seguinte método ao seu application_helper.rb:
def flash_class(level)
case level
when 'notice' then "alert alert-info"
when 'success' then "alert alert-success"
when 'error' then "alert alert-error"
when 'alert' then "alert alert-error"
end
end
E no local no template onde devem ser exibidas as mensagens, adicionamos um pequeno loop pelos níveis de mensagem que existirem:
<% flash.each do |key, value| %>
<div class="<%= flash_class(key) %>">
<%= value %>
</div>
<% end %>
basta usar normal depois:
flash[:success] = "Babá das Cove!"
flash[:notice] = ''Um dois três Bolinha!"
flash[:error] = ''Teste um dois três, eu vi uma joaninha!"
flash[:alert] = "Ela saiu voando pela porta da cozinha!"
Comentários
Postar um comentário