1

というモデルと という Building別のモデルがあるとしIssueます。

Issue belongs_to Building

Building has_many Issues

私は複数Buildingsあり、多くありIssuesます。現在、各問題を各建物に 1 つずつ追加する必要があります。

1 つを同時にIssueすべてに追加するにはどうすればよいですか?Buildings

4

1 に答える 1

3

has_and_belongs_to_many両方のモデルで関係が必要なようです。そのためのテーブルを作成します。

rails g migration create_buildings_issues building_id:integer issue_id:integer

移行を編集して、自動インデックスを削除し、複合インデックスを追加します。

create_table :buildings_issues, index: false do |t|
  t.references :building
  t.references :issue
end
add_index :buildings_issues, [:building_id, :issue_id]

次に、DB に次のテーブルを作成します。

rake db:migrate

次に、問題を複数の建物に追加できます。

any_issue.buildings << Building.all

または、任意の建物に問題を追加します。

any_building.issues << heat_issue
于 2013-07-30T23:45:38.590 に答える