1. ホーム
  2. ruby-on-rails

マイグレーションを生成する - ジョイントテーブルを作成する

2023-09-08 12:18:53

質問

私は多くの SOgoogle のジョインテーブルのマイグレーションを生成するための投稿です。 has many and belongs to many の結合テーブルを生成するために投稿しましたが、何も動作しませんでした。

すべての解決策は、空のマイグレーションファイルを生成しています。

私は rails 3.2.13 で、2つのテーブルがあります。 security_usersassignments . これらは、私が試したものの一部です。

rails generate migration assignments_security_users

rails generate migration create_assignments_security_users

rails generate migration create_assignments_security_users_join_table

rails g migration create_join_table :products, :categories (following the official documentation)

rails generate migration security_users_assignments security_user:belongs_to assignments:belongs_to 

2つのテーブル間の結合テーブルマイグレーションを作成する方法をどなたか教えていただけませんか?

どのように解決するのですか?

このコマンドを実行すると、空のマイグレーションファイルが生成されます(自動的に入力されるわけではありませんので、自分で入力する必要があります)。

rails generate migration assignments_security_users

生成されたマイグレーションファイルを開き、以下のコードを追加します。

class AssignmentsSecurityUsers < ActiveRecord::Migration
  def change
    create_table :assignments_security_users, :id => false do |t|
      t.integer :assignment_id
      t.integer :security_user_id
    end
  end
end

次に rake db:migrate をターミナルから実行してください。 私が作成した 多対多の関係に関するクイズ を簡単な例とともに作成しました。