Alertas atualizados do Bootstrap 2.1+ no Rails

Você provavelmente já usou um helper para enviar mensagens flash no Rails usando bons alertas pré-Bootstrap 2.1. Mas olhe! Agora temos um pouco mais de código com o botão de fechamento e tudo mais. É hora de uma atualização!

Esta solução tem a vantagem adicional de deixar suas visualizações extremamente limpas. E permite que você adicione suporte facilmente às suas próprias mensagens flash, além das velhas :noticee sombrias :alert.

No app/helpers/application_helper.rb

def flash_message
types
= { :notice => 'success', :alert => 'error', :info => 'info' }
flash
.inject("") do |sum, message|
content_tag
:div, :class => "alert alert-#{types[message[0]]}" do
button_tag
('×'.html_safe, :type => 'button', :class => 'close', :'data-dismiss' => 'alert', :name => nil) +
message
[1]
end
end
end

E então em suas visualizações, de preferência um layout como app/views/layouts/application.html.erb

<%= flash_message %>

Isso é tudo que você precisa para começar a exibir suas mensagens flash em alertas de Bootstrap totalmente novos e atualizados. Você pode continuar ligando para eles da mesma forma que está acostumado, usandoflash[:notice] = "Your new lemur family is already on their way to your place!"