with_scope

- 1.0.0 (0)
- 1.1.6 (18)
- 1.2.6 (0)
- 2.0.3 (6)
- 2.1.0 (1)
- 2.2.1 (2)
- 2.3.8 (5)
- 3.0.0 (-4)
- 3.0.9 (-2)
- 3.1.0 (0)
- 3.2.1
- 3.2.8
- 3.2.13
- 4.0.2
- 4.1.8
- 4.2.1
- 4.2.7
- 4.2.9
- 5.0.0.1
- 5.1.7
- 5.2.3
- 6.0.0
- 6.1.3.1
- 6.1.7.7
- 7.0.0
- 7.1.3.2
- 7.1.3.4
- What's this?
with_scope(method_scoping = {})
public
Scope parameters to method calls within the block. Takes a hash of method_name => parameters hash. method_name may be :find or :create. :find parameters may include the :conditions, :joins, :offset, :limit, and :readonly options. :create parameters are an attributes hash.
Article.with_scope(:find => { :conditions => "blog_id = 1" }, :create => { :blog_id => 1 }) do Article.find(1) # => SELECT * from articles WHERE blog_id = 1 AND id = 1 a = Article.create(1) a.blog_id == 1 end

:find takes more keys than written
The documentation says that the :find keywords “may include the :conditions, :joins, :include, :offset, :limit, and :readonly options”. Note that this does not mean that only those options are supported. :sort also works like it should, for example.

Rails 3.2 / 4.x with_scope replacement
If you’re looking for with_scope replacement for newer versions, see http://apidock.com/rails/ActiveRecord/Relation/scoping