Ruby初心者です。
ググっても、中々エラー解決することが出来なかったので、こちらに投稿させて頂きます。
rails testをした際に以下のようなエラーが表示されました。
ActiveRecord::NotNullViolation: SQLite3::ConstraintException: NOT NULL constraint failed: photos.post_id: INSERT INTO "photos" ("created_at", "updated_at", "id") VALUES ('2018-10-18 05:23:29.257167', '2018-10-18 05:23:29.257167', 980190962)
Photoテーブルが空になっているのか?と思い、
コンソールを使い、Photoテーブルの中身を見たのですが
#<ActiveRecord::Relation [#<Photo id: 1, image: "icon.png", post_id: 1, created_at: "2018-10-18 05:23:14", updated_at:"2018-10-18 05:23:14">]> irb(main):004:0>
となっておりました。
どちらに原因が考えられるのでしょうか??
答えて頂けたら、大変嬉しいです。
INSERTしようとしているデータはプログラムで生成したデータで、
ActiveRecordのデータはDBから取得したデータのように見えます。
INSERTしようとしているデータはpost_idがnullなのでエラーになっているように見えます。
rails dbでデータベースを開いた直後に、INSERT INTO "photos" ("created_at", "updated_at", "id") VALUES ('2018-10-18 05:23:29.257167', '2018-10-18 05:23:29.257167', 980190962)を打ち込んだところ、何も変わりませんでした。。
回答1件
あなたの回答
tips
プレビュー