Ruby on rails Rails中的嵌套选择
我正在开发一个Rails应用程序,它对Ruby on rails Rails中的嵌套选择,ruby-on-rails,ruby,forms,select,Ruby On Rails,Ruby,Forms,Select,我正在开发一个Rails应用程序,它对项目使用类别 我的类别模型是自连接的,因此可以嵌套类别: class Category < ActiveRecord::Base has_many :items # Self Join (categories can have subcategories) has_many :subcategories, :class_name => "Category", :foreign_key => "parent_id" be
项目使用类别
我的类别
模型是自连接的,因此可以嵌套类别:
class Category < ActiveRecord::Base
has_many :items
# Self Join (categories can have subcategories)
has_many :subcategories, :class_name => "Category", :foreign_key => "parent_id"
belongs_to :parent, :class_name => "Category"
...
end
因此,select看起来像这样:
Category1
Category2
Category3BelongsTo2
Category4BelongsTo1
<%= f.select :parent_id, nested_set_options(Category, @category) {|c| "#{'-' * c.level} #{c.title}" } %>
但我想要的是:
Category1
- Category4BelongsTo1
Category2
- Category3BelongsTo2
有没有一个帮手(这太棒了!)?如果没有,我如何才能做到这一点
谢谢 也许会对你有所帮助你可能想看看,或者太棒了,这是一件轻而易举的事
安装之后,我在categories表中添加了lft
和rgt
,并删除了自连接。然后使用Category.rebuild代码>。然后,可以像这样轻松填充select:
Category1
Category2
Category3BelongsTo2
Category4BelongsTo1
<%= f.select :parent_id, nested_set_options(Category, @category) {|c| "#{'-' * c.level} #{c.title}" } %>
我仍然希望能够选择父类别。问题是关于“Rails中的嵌套选择”,而不是关于哪个解决方案更好。