0

has_one、belongs_to 関係を持つ従業員とユーザーの 2 つのモデルがあります。ユーザー テーブルには、従業員テーブルの 'emp_id' 値のみである必要がある 'login' 列があります。以下の移行でこの関係を捉えようとしました。

      class AddFkToUsers < ActiveRecord::Migration
            def change
            add_foreign_key( :users, :employees, :source_column => :login, :foreign_column 
         => :emp_id )
            end
        end

しかし、この移行を実行しようとすると、次のエラー メッセージが表示されます。

    Mysql2::Error: Key column 'employee_id' doesn't exist in table: ALTER TABLE `users` 
    ADD CONSTRAINT `users_employee_id_fk` FOREIGN KEY (`employee_id`) REFERENCES 
   `employees`(id)/home/vasu/.rvm/gems/ruby-1.8.7-p371/gems/activerecord-
    3.2.9/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:245:in `query'

外部カラム名も指定できると思ったのですが、できないのでしょうか?

4

1 に答える 1