Is it possible to use ActiveRecord named_scope
s to create one query with sql OR
clauses?
When I use
Model.scope1.scope2
generated query is conjunction of these scopes.
Is it possible to use ActiveRecord named_scope
s to create one query with sql OR
clauses?
When I use
Model.scope1.scope2
generated query is conjunction of these scopes.
This isn't really what named scopes were designed to do, but you could probably use them with some additional code to get what you needed.
def combine_scopes(model)
(model.scope1 + model.scope2).uniq
end
or allow any scopes to be combined
def combine_scopes(model, scope1, scope2)
(model.send(scope1) + model.send(scope2)).uniq
end
you could even change that to allow any number of scopes using *args