0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

カラム名を変更したのに変更前のカラムに対してUndefined methodと言われた

Last updated at Posted at 2020-08-13

バージョン

・ruby 2.5.7
・Rails 5.2.4.3

カラム名を変えて、新しくレコードを保存しようとするがエラー

Undefined method script_idと言われる。
スクリーンショット 2020-08-13 17 11 14

しかし、schema.rb見たら(変更前:script_id → 変更後:joke_book_id)変わってるしなぁ、、。

schema.rb
t.integer "joke_book_id"
t.integer "user_id"
t.text "introduction"

では、このscript_idはどこから?

##結論:モデルを変更していなかった
色々調べて、モデルが怪しい事に気付く。
モデルを見ると、
validates :script_id, {presence: true}と変更前のままだった。ここを新しいカラムに変更。
validates :joke_book_id, {presence: true}

users_joke.rb
#validates :script_id, {presence: true} #変更前

validates :joke_book_id, {presence: true} #変更後

これで動いた!!!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?