2017-07-08 17 views
0

Rails 5.1とSQLiteを使用しています。以下の移行は期待どおりに機能していません。add_foreign_key外部キーを作成しない

class AddJobTitleForeignKeyToTimeOffTypes < ActiveRecord::Migration[5.1] 
    def change 
    add_column :time_off_types, :job_title_id, :integer 
    add_foreign_key :time_off_types, :job_title, :column => :job_title_id 
    end 
end 

テーブル「time_off_types」に「job_title_id」という列が作成されますが、外部キーは作成されません。

+0

'job_title_id'はここの外部キーです。 'add_foreign_key'は' time_off_types'テーブルの 'job_title_id'カラムとデータベースレベルの 'job_titles'テーブルのidカラムとの間に外部キーマッピングを作成します。 [Here](http://sevenseacat.net/posts/2015/add_foreign_key-gotchas-in-rails-4-2/)は、このトピックに関する有用なブログ記事です。 –

+0

@KarthikRavichandranあなたが説明したことはまさに私が望むものです私は間違って何をしていますか? –

+0

最初の列は何ですか? 2行目を実行してください: 'add_foreign_key:time_off_types、:job_titles' – Maxence

答えて

0

SQLiteは、データベースに外部キーを追加するためにrailsが実行する特定のSQLをサポートしていないため、現在のところ想定しています。

関連する問題