rails: has_many с двумя полями отношений - PullRequest
0 голосов
/ 19 апреля 2010

Привет У меня есть связь между 2 моделями. Модели "Категория" и "Страница". У меня сейчас есть вариант использования, который мне нужен 2 Страницы / Категория. Как я могу написать это? Поля в категории: "page_id" и "page_en_id".

Я не уверен, что это лучшее решение для этого, я знаю только решение own_to и has_many с опцией внешнего ключа, которая для меня здесь не имеет смысла.

Ответы [ 2 ]

2 голосов
/ 19 апреля 2010

Я не уверен, что вы ищете, но это выглядит так:

class Page < ActiveRecord::Base
  has_many :categories
  has_many :en_categories, :foreign_key => 'page_en_id', :class_name => 'Category'
end

class Category < ActiveRecord::Base
  belongs_to :page
end
0 голосов
/ 19 апреля 2010

Хорошо, теперь это мое решение, спасибо, ребята:

Страница

has_one :category
has_one :category_en, :foreign_key => 'page_en_id', :class_name => 'Page'

Категория

belongs_to :page
belongs_to :page_en, :class_name => "Page"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...