class Microframe::ORM::Queryset
Attributes
queryset[R]
table_name[R]
Public Class Methods
new(model)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 10 def initialize(model) @queryset = {} @table_name = model.table_name @model = model end
Public Instance Methods
add_query(field, condition)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 49 def add_query(field, condition) @queryset ||= {} @queryset[field] = queryset[field] ? queryset[field] << condition : [condition] self end
all(val = "*")
click to toggle source
# File lib/microframe/orm/queryset.rb, line 22 def all(val = "*") add_query("SELECT", "#{val}") unless queryset["SELECT"] fetch end
fetch()
click to toggle source
# File lib/microframe/orm/queryset.rb, line 55 def fetch result = process_query(queryset) @queryset = {} parse_result_to_objects(result) end
find(id)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 27 def find(id) where(id: id) end
find_by(option)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 31 def find_by(option) where(option) end
limit(val)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 39 def limit(val) @queryset["LIMIT"] = val self end
load()
click to toggle source
# File lib/microframe/orm/queryset.rb, line 61 def load fetch.first end
order(val)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 44 def order(val) @queryset["ORDER BY"] = val self end
select(val)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 35 def select(val) add_query("SELECT", val) end
where(options)
click to toggle source
# File lib/microframe/orm/queryset.rb, line 16 def where(options) sql = [] options.each {|key, val| sql << "#{key.to_s} = '#{val}'"} add_query("WHERE", sql.join(" AND ")) end