【问题标题】:flash message when user logout用户注销时闪烁消息
【发布时间】:2014-01-15 20:19:32
【问题描述】:
在 devise.en.yml 中,我将 signed_out 消息保持为空
sessions:
signed_out: ""
我有一个条件,如果尝试失败 > 3,那么我们必须让用户退出。
为此,我在控制器中写道:
如果参数[:failed_attempt].to_i > 3
current_user.update_attribute(:status, false)
redirect_to destroy_user_session_path(@user), :notice =>
“锁定”
结束
我可以更新属性并退出,但无法显示通知或闪信。请帮帮我。
我收到了除此之外的所有消息。我也试过了:
redirect_to destroy_user_session_path(@user)
flash[:notice] = "锁定"
但没用。
【问题讨论】:
标签:
ruby-on-rails
flash
devise
【解决方案1】:
您很可能正在设置 flash 变量,但实际上并未渲染出内容...试试这个:
在你的application.html.erb之前<%= yield %>粘贴这样的代码:
<% flash.each do |name, msg| %>
<div data-alert id="flashes" class="alert-box <%= name %>">
<%= content_tag :div, msg, id: "flash_#{name}" %>
<a href="#" class="close">×</a>
</div>
<% end %>
之后你可以随心所欲地设计它
【解决方案2】:
这成功了。我刚刚将我的退出更改为:
sign_out(current_user), :notice =>"locked"
而不是
redirect_to destroy_user_session_path(@user), :notice => "locked"