回答編集履歴
1
説明の追記
test
CHANGED
@@ -23,3 +23,21 @@
|
|
23
23
|
|
24
24
|
|
25
25
|
Lineクラスを本当に作成していますか?
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
## 追記
|
30
|
+
|
31
|
+
もうちょっといろいろいじってみましたが、「クラスが存在しないかつ必須」ではなく**「エンティティが存在しないかつ必須」**が正解ですね。belongs_toで自分が属する親がいない状態ってことです。
|
32
|
+
|
33
|
+
つまりFactoryGirlで適切に行う場合は、あらかじめ関連先のエンティティをcreateで作っておいたり、質問者様のように`association`を指定したりで回避できます。私の環境ではassociation指定でFactoryGirlが関連先のエンティティを適切にDBに挿入してくれましたので再現しませんでした。
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
あまりbelongs_toが必須でなくてもいいというケースはないかと思いますが、belongs_toのオプションとして`optional: true`を指定すればValidation failedは回避できます。
|
38
|
+
|
39
|
+
なおRails5からはbelongs_toの必須か否かがconfig/以下のファイル内にて`config.active_record.belongs_to_required_by_default = true`と設定されているため、初期値が「必須」となります。よって`optional: true`と指定するようです。
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
いずれにしろ予約語であるか否かにかかわらず、適切に構成すれば問題なく実行できるはずですが…。
|