Родословная: пропустить элемент из области видимости
Использование драгоценного происхождения.
Как пропустить элемент self из Category::ActiveRecordRelation или нужно использовать область?
= simple_form_for @category do |f|
= f.input :parent_id, collection: Category.roots
Что-то вроде:
= f.input :parent_id, collection: Category.roots.except(@category)
1 ответ
Решение
= f.input :parent_id, collection: Category.roots.where("id <> ?", @category.id)
или через область
category.rb
scope :except, lambda{ |category| where("id <> ?", category.id) }
затем
= f.input :parent_id, collection: Category.roots.except(@category)