Ruby on rails 未定义的方法`验证';对于#<;管理员:0x99e67d8>;
请我是RoR的新手,我正在尝试根据管理员提供的名称和密码进行管理员身份验证。 我正在使用“RubyonRails教程(Rails5)” 迈克尔·哈特尔(MichaelHartl)在第8章中的“用Rails学习Web开发”;基本登录。Ruby on rails 未定义的方法`验证';对于#<;管理员:0x99e67d8>;,ruby-on-rails,Ruby On Rails,请我是RoR的新手,我正在尝试根据管理员提供的名称和密码进行管理员身份验证。 我正在使用“RubyonRails教程(Rails5)” 迈克尔·哈特尔(MichaelHartl)在第8章中的“用Rails学习Web开发”;基本登录。 当我尝试使用authenticate方法对用户进行身份验证时,它会显示以下错误消息未定义的方法authenticate for#您的管理员模型中是否有has_secure_密码?不,我没有,这只是默认情况,在使用rails生成模型命令生成模型之后,您需要它:) ad
当我尝试使用authenticate方法对用户进行身份验证时,它会显示以下错误消息
未定义的方法authenticate for#您的管理员
模型中是否有has_secure_密码
?不,我没有,这只是默认情况,在使用rails生成模型命令生成模型之后,您需要它:)
adminsessions_controller.rb
class AdminsessionsController < ApplicationController
def new
end
def create
admin = Admin.find_by(name: params[:adminsession][:name].downcase)
if admin && admin.authenticate(params[:adminsession][:password])
render plain: 'log in succesful'
else
render plain: 'log in failed'
end
end
end
admin.rb
class Admin < ApplicationRecord