0

需要在 Ruby on Rails 中创建多级类别。所以我创建了一个模型类别,它有标题和描述并且有很多文章。

class Category
  has_many :articles
end

然后我需要在模型中添加parent_id字段Category。此字段必须为 null(如果它是父类别)或具有某个 id(如果它是子类别)。显然,要选择任何父类别,它必须选择Select * from Categories where parent_id=null.

我希望你明白我的意思。

怎么可能达到?

更新:感谢您的建议。这是我所拥有的

class Category < ActiveRecord::Base
  belongs_to :parent, :class_name => "Category", :foreign_key => "parent_id"
  has_many :children,  :class_name => "Category", :foreign_key => "parent_id"
  attr_accessible :description, :title
end

据我了解,:foreign_key => "parent_id"inhas_many :children必须被删除,对吧?

4

1 回答 1

4

在这里阅读自加入模型:http: //guides.rubyonrails.org/association_basics.html#self-joins

于 2012-08-24T08:15:42.737 回答