Rails Проблема с ассоциациями с использованием параметров primary_key + foreign_key - PullRequest
0 голосов
/ 05 июля 2010

Я хочу получить доступ к устаревшей схеме базы данных из Rails. У меня одна таблица NAGIOS_OBJECTS с первичным ключом OBJECT_ID и одна таблица NAGIOS_HOST_CHECKS, которая ссылается на NAGIOS_OBJECTS со столбцом HOST_OBJECT_ID. Таким образом, я определил отношения следующим образом:

class NagiosObject < ActiveRecord::Base
  has_one :nagios_host_check, :foreign_key => :host_object_id, :primary_key => :object_id
end

class NagiosHostCheck < ActiveRecord::Base
  belongs_to :nagios_object, :foreign_key => :host_object_id, :primary_key => :object_id
end

Однако при вызове a_nagios_object.nagios_host_check или a_nagios_host_check.nagios_object я всегда получаю ноль.

Есть идеи, что не так с моим кодом?

1 Ответ

2 голосов
/ 05 июля 2010

foreign_key и primary_key должны быть строками, а не символами

например:

class NagiosObject < ActiveRecord::Base
  has_one :nagios_host_check, :foreign_key => 'host_object_id', :primary_key => 'object_id'
end

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#M001317

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