Rails 3.1设计如何更改Flash消息CSS从通知到成功?

jac*_*ter 7 devise ruby-on-rails-3.1

Rails 3.1和Devise 1.5问题.

我正在使用以下代码在我的布局中显示flash消息:

    <% flash.each do |key, message| %>
      <%= content_tag(:div, message, :class => "flash #{key}") %>
    <% end %>
Run Code Online (Sandbox Code Playgroud)

我想将一些确认消息的css类从通知更改为成功,但我不知道在哪里覆盖或更改密钥,因为我不知道它在哪里设置.

任何人都能指出我正确的方向吗?

谢谢!

Zep*_*434 1

因此,做到这一点的方法是编辑设备控制器。

当您通过正常安装安装 Devise 时,我认为它不会安装控制器(至少对我来说没有)。

因此,首先您应该手动添加控制器文件并将它们放入项目中的同一位置: https: //github.com/plataformatec/devise/tree/master/app/controllers/devise

项目中包含这些文件后,请转到“sessions_controller.rb”文件。

第 16 行和第 25 行,您应该看到代码:

set_flash_message :notice, :signed_in
Run Code Online (Sandbox Code Playgroud)

set_flash_message :notice, :signed_out
Run Code Online (Sandbox Code Playgroud)

您只需将“:notice”更改为“:success”

希望有效!