1

こんにちは私はRoRの初心者です。そのため、過去3時間ほど、非常に基本的なことに固執しています。

私はこの質問に従いました。そのため、関連付けを追加するには、次のことを行う必要があると思いました。

  • モデルを作成する(rails generate model1
  • 2番目のモデルを作成します(rails generate model2
  • model1.rb次に、とmodel2.rbファイルを編集し、それぞれにとを指定has_many :model2sbelongs_to :model1ます。
  • レーキを実行しますdb:migrate

これにより、モデル、データベース内のそれぞれのテーブル、およびmodel1のmodel2テーブル内の参照が作成されるはずだと思いました。ただし、この最後の部分は実行されていません。

ガイドでさえ、関連付けを追加するために必要な正確な手順については言及していません。入門ガイドでは、モデルファイルに関連付けを追加するだけで済み、AssociationBasicsガイドでは関連付けについて説明しています。次に、データベースに反映されるようにそれらを追加する方法を説明します。

ありがとうございました!

4

2 に答える 2

1

DB移行ファイルでは、次のようなモデルの生成中に外部キーを指定してmodel2いない限り、手動で外部キーを追加する必要があります。model1_id:integer

rails generate model model2 model1_id:integer #Extra fields ...

こちらのドキュメントをご覧ください:http: //guides.rubyonrails.org/command_line.html#rails-generate

于 2012-08-10T11:19:41.900 に答える
0

次の手順を実行する必要があります。親と子の2つのモデルがある場合。

親のモデルに、has_many関係を追加します。子に、belongs_to関係を追加します。

子に列を追加して、参照を保持します。

rails g migration add_parent_id_to_child parent_id:integer
于 2012-08-10T12:28:06.473 に答える