這是我第一次在同一模型(產品類別)中建立層次結構。Rails:acts_as_tree和acts_as_sane_tree
我在這個主題上發現了一個很棒的post。由於我使用Rails 4 & Postgres,根據文章支持遞歸查詢(這是我第一次聽到這個術語),「帶遞歸查詢的鄰接列表」似乎是要走的路,因爲它很容易建模和快速查詢。
該文章提出了acts_as_sane_tree gem,它支持遞歸查詢。這個回購沒有更新兩年,我不確定它是否支持Rails 4.該項目是acts_as_tree gem的分支,它支持Rails 4並且維護良好。
我應該使用哪種寶石?並且acts_as_tree gem是否支持遞歸查詢以避免昂貴的查詢?
感謝您的回覆。根據我的理解,與遞歸查詢相鄰列表相對於路徑枚舉(Ancestry gem)具有一些優勢:1.參照完整性,2.更容易查詢子項,3.不限制層次結構的深度,4.僅更新一個查詢/插入/刪除。來源:http://gmarik.info/blog/2012/10/14/recursive-data-structures-with-rails/ http://www.slideshare.net/billkarwin/models-for-hierarchical-data/http: //stackoverflow.com/questions/4907698/design-relational-database-use-hierarchical-datamodels-or-avoid-them – migu