columnの追加と削除ができない
解決したいこと
columnの追加と削除ができないです
現在progateでtwitterのクローンを作成している初心者です。
formに入力したパスワードをハッシュ化させ、password_digest_columnに保存する工程でNameErrorが発生しました。
原因を調べると、usersテーブルのpassword_digest_columnがpasswor_columnのままでした。
migrationファイルにadd_columnとremove_columnを書いて、db:migrateを行ったのですが変化がありません。
この場合、もう一度マイグレーションファイル作り直すべきかまたは、schema.rbに直接書き込むべきでしょうか?ご教授よろしくお願いいたします。
発生している問題・エラー
NameError in UserController#login
undefined local variable or method `password_digest' for #<User:0x00000000094ea8c8> Did you mean? password
def login
@user=User.find_by(email: params[:email])
if @user && @user.authenticate(params[:password])
session[:user_id]=@user.id
flash[:notice]="ログインしました"
redirect_to("/movie/index")
または、問題・エラーが起きている画像をここにドラッグアンドドロップ
該当するソースコード
Change_Users_Columns.rb
class ChangeUsersColumns < ActiveRecord::Migration[5.2]
def change
add_column :users, :password_digest,:string
remove_column :users,:password, :string
end
end
schema.rb
create_table "users", force: :cascade do |t|
t.string "name"
t.string "email"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "image_name"
t.string "password"
end
0