我使用authlogic进行身份验证。用作身份验证模型的当前模型是用户模型。我想向用户添加“属于”关系,这意味着我需要在用户表中使用外键。假设外键在用户模型中称为car_id。但是,出于某种原因,当我做的时候
u = User.find(1)
u.car_id = 1
u.save!
我得到了
ActiveRecord::RecordInvalid: Validation failed: Password can't be blank
我的猜测是这与authlogic有关。我没有在用户模型上验证密码。这是用户表的迁移。
def self.up
create_table :users do |t|
t.string :email
t.string :first_name
t.string :last_name
t.string :crypted_password
t.string :password_salt
t.string :persistence_token
t.string :single_access_token
t.string :perishable_token
t.integer :login_count, :null => false, :default => 0 # optional, see Authlogic::Session::MagicColumns
t.integer :failed_login_count, :null => false, :default => 0 # optional, see Authlogic::Session::MagicColumns
t.datetime :last_request_at # optional, see Authlogic::Session::MagicColumns
t.datetime :current_login_at # optional, see Authlogic::Session::MagicColumns
t.datetime :last_login_at # optional, see Authlogic::Session::MagicColumns
t.string :current_login_ip # optional, see Authlogic::Session::MagicColumns
t.string :last_login_ip # optional, see Authlogic::Session::MagicColumns
t.timestamps
end
end
后来我将car_id列添加到其中。
def self.up
add_column :users, :user_id, :integer
end
我有没有关闭此验证?