こんにちは、rails 4.1の環境で、ActiveRecordからデータを登録しました。
courseDetail.save
そうしたところ以下のようなエラーが発生しています。
発生したエラー
Failure/Error: courseDetail.save ActiveRecord::StatementInvalid: Mysql2::Error: Field 'course_detail_id' doesn't have a default value: INSERT INTO `course_details` (`course_id`, `created_at`, `latitude`, `longitude`, `updated_at`) VALUES (77, '2016-07-03 04:46:06', 63.42022385786882, -21.691466134842187, '2016-07-03 04:46:06')
mysqlのコンソールから同じsqlを実行するとwarningは出ますが、insert自体はできています。
$ rails dbconsole
mysql> INSERT INTO course_details
(course_id
, created_at
, latitude
, longitude
, updated_at
) VALUES (77, '2016-07-03 04:46:06', 63.42022385786882, -21.691466134842187, '2016-07-03 04:46:06')
mysql> Query OK, 1 row affected, 2 warnings (0.01 sec)
mysql>
mysql> SHOW WARNINGS
-> ;
+---------+------+-------------------------------------------------------+
| Level | Code | Message |
+---------+------+-------------------------------------------------------+
| Warning | 1364 | Field 'course_detail_id' doesn't have a default value |
+---------+------+-------------------------------------------------------+
mysql> commit;
Query OK, 0 rows affected (0.00 sec)
mysqlでwarningが出るとrails側ではerrorとなるようですが、そのような仕様なのでしょうか?また、設定等で回避できるものなのでしょうか?
そもそもこのwarningを避けるべきなのかもしれませんが。。。
すいませんが、おわかりになるかた教えてください。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。