我已按照以下文章中的教程了解如何停用用户: https://github.com/plataformatec/devise/wiki/How-to:-Soft-delete-a-user-when-user-deletes-account
我的问题是,我该如何制作,以便当停用的用户登录时,会向他们显示一个允许重新启动其帐户的页面? IE:“用户/重新激活”,按钮重新激活?
我知道我必须重写默认的用户会话控制器,但我不太确定调用active_for_authentication的时间点或方式,以及如何覆盖重定向。
答案 0 :(得分:0)
当用户尝试登录时,请求将路由到create
的{{1}}方法,如果凭据有效,则会创建此用户的会话。在该方法中,您只需要检查是否填充了sessions_controller.rb
列,然后是一些分支逻辑,以重定向到您有效登录的任何登录页面或重新激活页面。
您的代码看起来类似于以下示例,但同样,您没有提供实现细节,因此适合您:
deleted_at