Authlogic:为#<User获取一个未定义的方法`password':
即使我在模型中添加了“acts_as_authentic”,我也无法在Authlogic中获取用户模型来理解“密码”方法。 在Authlogic灯塔上也报道了这个问题,但是没有人描述他们如何修复它:
http://binarylogic.lighthouseapp.com/projects/18752/tickets/128-undefined-method-password-on-rails-231#ticket-128-9
用户表存在所有必需的字段,控制器和其他所有内容肯定遵循教程中的字母。
谁知道什么可能是错的?
(哦,我正在运行Rails 2.3.3,Authlogic 2.1.1)
我拼错了“crypted_password”作为“crypted_passwond”。 精氨酸!
对于那里的所有其他人,请确保您的数据库中包含所有必需的列。
确保您的用户模型使用acts_as_authentic
:
#app/models/user.rb class User < ActiveRecord::Base acts_as_authentic end
我做了各种故障排除,并在我解决其他问题时以某种方式删除了这个。
您是否在安装authlogic后重新启动了应用程序? 使用Passenger, touch tmp/restart.txt
。
我遇到了同样的问题,终于意识到我的用户路线是错误的。 我有mystyped
map.resources user
当我修复并更改为此时,authlogic识别出密码字段
map.resources.users