У меня есть категории, которые находятся в древовидной структуре. Я пытаюсь связать их вместе, определяя родителя для каждого из них. (Я не мог понять, как вызвать свойство parent
, так что теперь он просто category
, но это означает родительский элемент).
class Category < ActiveRecord::Base
has_one :category # the parent category
end
Но отношения заканчиваются неправильным образом.
Функция getter находится в дочерней категории (правильно), но category_id
хранится в родительском объекте:
parent = Category.create(:name => "parent")
child = Category.create(:name => "child", :category => parent)
parent.id # 1
child.id # 2
child.category_id # nil
parent.category_id # 2
child.category.name # "parent" (!!)
Родитель должен иметь несколько дочерних элементов, поэтому это не будет работать.