Поскольку 4.1
, вы можете использовать ActiveRecord::QueryMethods#unscope
для борьбы с областью по умолчанию:
class User < ActiveRecord::Base
default_scope { where tester: false }
scope :testers, -> { unscope(:where).where tester: true }
scope :with_testers, -> { unscope(:where).where tester: [true, false] }
# ...
end
В настоящее время возможно unscope
, например: :where, :select, :group, :order, :lock, :limit, :offset, :joins, :includes, :from, :readonly, :having
.
Но все же , пожалуйста, избегайте использования default_scope
, если можете . Это для вашего же блага.