パスワードが変更された場合のみパスワードが有効になるようにプログラムを設定しようとしています。そのため、ユーザーはパスワードを入力せずに他の情報を編集できます。 。未定義のメソッドpassword_changed?エラー
私がログインしようとしたとき、私は現在、
NoMethodError in UsersController#create, undefined method `password_changed?' for #<User:0x00000100d1d7a0>
をというエラーを取得しています
ここでは私の検証コードはuser.rb
である:ここでは
validates :name, :presence => true,
:length => { :maximum => 50 }
validates :email, :presence => true,
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
validates :password, :presence =>true, :confirmation => true, :length => { :within => 6..40 }, :if=>:password_changed?
は私の作成方法であり、 users_controller.rb
:
def create
@user = User.new(params[:user])
if @user.save
sign_in @user
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
@title = "Sign up"
render 'new'
end
end
ありがとうございました!
いいえ、まだ同じエラーが発生します。 – steffi2392
はあなたのモデルの 'password'カラムですか?データベース内の – apneadiving
?いいえ、encrypted_passwordだけです。私はそれを追加する必要がありますか? – steffi2392