method
extending
rails latest stable - Class:
ActiveRecord::QueryMethods
extending(*modules, &block)public
Used to extend a scope with additional methods, either through a module or through a block provided.
The object returned is a relation, which can be further extended.
Using a Module
module Pagination def page(number) # pagination code goes here end end scope = Model.all.extending(Pagination) scope.page(params[:page])
You can also pass a list of modules:
scope = Model.all.extending(Pagination, SomethingElse)
Using a Block
scope = Model.all.extending do def page(number) # pagination code goes here end end scope.page(params[:page])
You can also use a block and a module list:
scope = Model.all.extending(Pagination) do def per_page(number) # pagination code goes here end end