gpt4 book ai didi

ruby - 设计:从根路径重定向到 users/sign_in 时不显示 "unauthenticated"flash 消息

转载 作者:数据小太阳 更新时间:2023-10-29 07:22:29 28 4
gpt4 key购买 nike

在 Rails 3.2 中使用 Devise 2.2.4。

当我未登录时,我转到 url myapp.com/documents,Devise 将我重定向到 myapp.com/users/sign_in 并在 devise.failure.unauthenticated 下显示在 devise.en.yml 中配置的闪现消息。

这是可取的!

当我未登录时,我转到了 url myapp.com(根路径),Devise 进行了类似的重定向并显示了相同的闪存消息。

重定向仍然是可取的,flash 消息不是那么多。

有没有一种方法可以配置 Devise 在从根路径重定向时不显示 flash 的“未验证”消息?我知道我可以在自定义 FailureApp 中绕过它,但这似乎是一个足够常见的案例,应该存在更简单的解决方案。

最佳答案

您可以在重定向后删除 SessionsController 中的闪现消息。

class SessionsController < Devise::SessionsController

before_filter :remove_authentication_flash_message_if_root_url_requested

private

def remove_authentication_flash_message_if_root_url_requested
if session[:user_return_to] == root_path and flash[:alert] == I18n.t('devise.failure.unauthenticated')
flash[:alert] = nil
end
end
end

关于ruby - 设计:从根路径重定向到 users/sign_in 时不显示 "unauthenticated"flash 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21634928/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com