Удаление внешнего ключа с помощью Matthuhiggins foreign_key? - PullRequest
3 голосов
/ 01 августа 2010

У меня нет проблем с добавлением ограничения внешнего ключа с этим гемом:

http://github.com/matthuhiggins/foreigner

Однако я не могу удалить внешний ключ.

class ForeignKeys < ActiveRecord::Migration
  def self.up
    add_foreign_key(:threads, :users)
  end

  def self.down
    remove_foreign_key(:threads, :column => :user_id)
  end
end

Может ли кто-нибудь помочь мне здесь.

Спасибо.

Ответы [ 2 ]

6 голосов
/ 01 августа 2010

Это последнее, о чем я могу думать.

def self.down
    execute 'ALTER TABLE threads DROP FOREIGN KEY user_id'
end

СТАРЫЙ

Это должно работать:)

remove_foreign_key :threads, { :column => :user_id }

или

remove_foreign_key('threads', 'user_id')

или

remove_foreign_key(:threads, :user_id)

Петр

4 голосов
/ 27 апреля 2011

Лучшее решение -

remove_foreign_key :threads, :users

Однако, должно работать и следующее:

remove_foreign_key :threads, :column => :user_id

Если этого не произошло, сообщите об ошибке в моей библиотеке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...