所以,我正在使用一个应用程序,我希望用户能够在“文件夹”中对对象进行分组.基本上:
用户has_many:foos
Foos不必在一个文件夹中,但它们可以.在这种情况下:
文件夹has_many:foos和Foo belongs_to:文件夹
现在,我想要设置文件夹,以便它们可以嵌套.我觉得这是像…
文件夹has_many:folders
我听说这种自我参与的关系是没有什么大不了的,但我真的不知道如何运作.我没有能够弄清楚在模型中应该如何声明这一点,以及我需要在数据库中提供哪些列.
有人可以举个例子吗?我也会重视您在应用程序中设置这种关系的任何建议/单挑/警告/经验教训.
谢谢!
解决方法
结帐coreyward的答案在这里的问题:
Creating a model that has a tree structure
基本上你想添加一个“parent_id”字段到你的文件夹表,然后在你的文件夹模型中建立一个关系如下所示:
belongs_to :parent,:class_name => "Folder" has_many :folders,:foreign_key => "parent_id"@H_301_25@