繁体   English   中英

登录前验证用户是否获得管理员的批准

[英]Verify if user is approved by admin before login

您好,我遵循了教程“ 如何:要求管理员在登录前先激活帐户”以验证用户是否可以被管理员批准才能进行连接。

我想添加条件以测试是否可以连接

这是我的控制器session_controller.rb

class SessionsController < Devise::SessionsController
before_action :set_email

 def new
  super
 end

def create
 self.resource = warden.authenticate!(auth_options)
 set_flash_message(:notice, :signed_in) if is_navigational_format?
 sign_in(resource_name, resource)

 if !session[:return_to].blank?
  redirect_to session[:return_to]
  session[:return_to] = nil

 else
  respond_with resource, :location => after_sign_in_path_for(resource)
end

end

def confirm_email
 user = User.find_by_confirm_token(params[:id])
 if user
  user.email_activate
  flash[:success] = "Welcome to the Sample App! Your email has been 
confirmed.
  Please sign in to continue."
  redirect_to signin_url
 else
  flash[:error] = "Sorry. User does not exist"
  redirect_to root_url
end
end


def set_email
 @email = params[:email];
 @user1 = params[:user];
end



end

谢谢

def create
 self.resource = warden.authenticate!(auth_options)
 if current_user.approved?
   set_flash_message(:notice, :signed_in) if is_navigational_format?
   sign_in(resource_name, resource)
   if !session[:return_to].blank?
     redirect_to session[:return_to]
     session[:return_to] = nil
   else
     respond_with resource, :location => after_sign_in_path_for(resource)
   end
 else
   sign_out current_user

   redirect_to "/"    
 end
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM