0

使用宝石血统。

如何从 Category::ActiveRecordRelation 中跳过 self 元素或需要使用范围?

= simple_form_for @category do |f|
  = f.input :parent_id, collection: Category.roots 

就像是:

= f.input :parent_id, collection: Category.roots.except(@category)
4

1 回答 1

2
= f.input :parent_id, collection: Category.roots.where("id <> ?", @category.id)

或通过范围

类别.rb

scope :except, lambda{ |category| where("id <> ?", category.id) }

然后

= f.input :parent_id, collection: Category.roots.except(@category)
于 2012-09-07T13:28:49.920 回答