0

シンプルに見えますが、問題があります:

model A
belong_to :B

model B
has_many :A

database tables:
table A:
id,...,b_id

table B:
id,...

新しい A を作成しようとするとき、次のようにして (既存の) B を設定します: ab = B

「b を空白にすることはできません」というエラーが表示されます

4

3 に答える 3

0

ab = B を実行する代わりに、a.b_id = B.id を実行します。

于 2011-01-26T16:31:00.263 に答える
0

また、できるはずですnewA = B.as.build(「as」は a の複数形です)。

もちろん、「A、a、B、b」の例は非常に紛らわしいです! 今後は、「顧客」と「注文」、「ブログ」と「投稿」、または意味のない不可解な文字以外を使用してください。

于 2011-01-26T17:52:12.140 に答える
0

コレクションと親子関係がどのように機能するかを考えてください。提案されているように、関連する B の ID を A に追加できますが、代わり B.a[] = aに、オブジェクト「B」の「a」コレクションに「a」を追加するものを指定することもできます。このようにして、関係はより直感的な方法で設定され、子オブジェクトではなく親オブジェクトに向けられます。

于 2011-01-26T16:37:11.727 に答える