class Rmodel::Scope
Attributes
raw_query[R]
Public Class Methods
define_scope(name, &block)
click to toggle source
# File lib/rmodel/scope.rb, line 29 def self.define_scope(name, &block) define_method name do |*args| new_raw_query = @raw_query.instance_exec(*args, &block) self.class.new(@repo, new_raw_query) end end
new(repo, raw_query)
click to toggle source
# File lib/rmodel/scope.rb, line 7 def initialize(repo, raw_query) @repo = repo @raw_query = raw_query end
Public Instance Methods
delete_all()
click to toggle source
# File lib/rmodel/scope.rb, line 16 def delete_all @repo.delete_all(self) end
destroy_all()
click to toggle source
# File lib/rmodel/scope.rb, line 20 def destroy_all @repo.destroy_all(self) end
each(&block)
click to toggle source
# File lib/rmodel/scope.rb, line 12 def each(&block) @repo.find_all(self).each(&block) end
find(id)
click to toggle source
# File lib/rmodel/scope.rb, line 24 def find(id) new_raw_query = @raw_query.find_by_id(id) self.class.new(@repo, new_raw_query).first end