创建一个 Rails 论坛,我如何创建一个可以 link 通过自身的子类别 crud
Creating a Rails forum, how would i create a sub category crud which can link through itself
目前我有类别 > 帖子 > 评论,并且可以 CRUD 类别,在类别内我可以 CRUD 帖子(特定于类别)并且在帖子内我可以 CRUD 评论,我现在希望能够做到的是Categories内的子Categories增删改查,而且Sub-Categories内的子Categories连续增删改查。
所以我真的不确定从哪里开始,我的想法是我需要创建一个模型来检查是否有 category_id,如果没有则检查子 category_id或者这些行单独的东西?
感谢任何帮助。
长腿
首先,它本身没有子类别。一个 sub-category 是一个带有 parent 的类别,这就是线索。
首先你需要将关系添加到模型中:
belongs_to :parent, :class_name => 'Category', :foreign_key => :parent
has_many :children, :class_name => 'Category', :foreign_key => :parent
然后在您的迁移中:
add_field :categories, :parent_id, :integer
现在您将拥有:
childrens = Category.first.children
parent = childrens.first.parent
随处可用。
随意重命名 children-parent 关系,但更改所有其他相关内容。
目前我有类别 > 帖子 > 评论,并且可以 CRUD 类别,在类别内我可以 CRUD 帖子(特定于类别)并且在帖子内我可以 CRUD 评论,我现在希望能够做到的是Categories内的子Categories增删改查,而且Sub-Categories内的子Categories连续增删改查。
所以我真的不确定从哪里开始,我的想法是我需要创建一个模型来检查是否有 category_id,如果没有则检查子 category_id或者这些行单独的东西?
感谢任何帮助。
长腿
首先,它本身没有子类别。一个 sub-category 是一个带有 parent 的类别,这就是线索。
首先你需要将关系添加到模型中:
belongs_to :parent, :class_name => 'Category', :foreign_key => :parent
has_many :children, :class_name => 'Category', :foreign_key => :parent
然后在您的迁移中:
add_field :categories, :parent_id, :integer
现在您将拥有:
childrens = Category.first.children
parent = childrens.first.parent
随处可用。
随意重命名 children-parent 关系,但更改所有其他相关内容。