Die Ruby on Rails-Datenbankmigration erstellt keine Fremdschlüssel in MySQL-Tabellen
Ich versuche, eine Datenbankmigration in einer Ruby on Rails-Anwendung zu ändern. Ich verwende MySQL als meine Datenbank und möchte der Tabelle, die erstellt wird, Fremdschlüssel hinzufügen. Ich verwende den folgenden Code, und während die Spezifikationen zum Erstellen von Nullwerten für entsprechende Spalten befolgt werden, werden keine Fremdschlüsseleinschränkungen angewendet.
class CreateBookCheckOuts < ActiveRecord::Migration
def self.up
create_table :book_check_outs do |t|
t.integer :book_id, :null => false, :options =>
"CONSTRAINT fk_book_check_out_books REFERENCES books(id)"
t.integer :person_id, :null => false, :options =>
"CONSTRAINT fk_book_check_out_people REFERENCES people(id)"
t.datetime :OutDate, :null => false
t.datetime :ReturnDate, :null => true
t.timestamps
end
end
def self.down
drop_table :book_check_outs
end
end