railsのマイグレーションファイルでテーブル参照する時のadd_foreign_key
で迷っています。
例えば下記のように書くと、参照元テーブルはprograms
、参照先テーブルはstaff_members
となり、参照元の外部キーカラムはregistrant_id
、参照先テーブルのカラムはid
になるかと思います。
迷っているのが、参照先テーブルのカラムをstaff_members
テーブルの主キーであるid
カラム以外にしたい時です。
こちらを参照するかぎり、参照先テーブルの主キーカラム名をid
以外にするにはprimary_key
を使えばよいのかと思いますが、主キーカラム以外を参照する方法が書いていません。
非RailsのレガシーなシステムをRailsに置き換えるのに困っており、ご教示いただけると助かります。
class CreatePrograms < ActiveRecord::Migration def change create_table :programs do |t| t.integer :registrant_id, null: false # 登録職員(外部キー) t.string :title, null: false # タイトル t.timestamps end add_index :programs, :registrant_id add_foreign_key :programs, :staff_members, column: 'registrant_id' end end
あなたの回答
tips
プレビュー