【问题标题】:How do I customize the before_filer :authenticate_user! from Devise?如何自定义 before_filer :authenticate_user!从设计?
【发布时间】:2011-06-10 06:44:41
【问题描述】:

我想在发送给我的用户的电子邮件中添加 url。我想像 Facebook 一样为他们的电子邮件传递一个参数,以便已经填充了登录电子邮件字段。

我想如果我将它作为参数传递给 url,我应该能够在 :authenticate_user 中处理它! before_filter。如果用户没有登录,那么我可以使用该参数来填充登录表单中的字段。

我该怎么做?

【问题讨论】:

    标签: ruby-on-rails-3 devise email


    【解决方案1】:

    按照devise_invitable 的示例,您可以在 url 中添加一个令牌。

    处理可以从 Devise::SessionsController 继承的 url 的控制器 并会通过令牌找到用户,然后为用户显示一个定制的登录表单

    类似

    # GET /users/sign_in
    class MyAutoLoginController < Devise::SessionsController
      def new
        @user = User.find_by_token(params[:token]
        super
      end
    

    【讨论】:

    • 这可行,但我仍然希望用户必须输入他们的密码,以防其他人获得电子邮件。
    • 更好。我更新了我的回复。大体思路还是一样的,继承sessionController,自定义action/views
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多