我正在为登录/退出编写一个简单的应用程序,我遇到了错误:
NoMethodError in WelcomeController#create
undefined method `login' for #<User:0x3dc02c0>
这是我的用户模型
def self.authenticate(pass)
user = find_by_pass(pass)
if user.nil?
return nil
else
return user
end
end
这是我的控制器
def create
user = User.find_by_username(params[:session][:username])
if user && user.authenticate(params[:session][:pass])
login user
redirect_to root_url
else
render 'index'
end
end
这是我的欢迎帮助
def login(user)
session[:user_id] = user.id
end
这是我的应用程序控制器
protect_from_forgery with: :exception
include WelcomeHelper
请帮我解决这个问题:)
答案 0 :(得分:0)
尝试这样:
<强> application_controller:强>
protect_from_forgery with: :exception
def login(user)
session[:user_id] = user.id
end
并使用已定义的所有其余方法