class Rollerskates::QueryBuilder
Public Class Methods
new(model)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 7 def initialize(model) @model = model @columns = [] @type = :collection end
Public Instance Methods
build(create_parameters)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 61 def build(create_parameters) @create_parameters = create_parameters @query = "INSERT INTO #{table_name} (#{create_columns})\ VALUES (#{create_values})" self end
count()
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 48 def count @count = true execute @result.flatten[0].to_i end
destroy(item_id = nil)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 68 def destroy(item_id = nil) index = item_id ? item_id : id @query = "DELETE FROM #{table_name} WHERE id = #{index}" execute self end
destroy_all()
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 75 def destroy_all @query = "DELETE FROM #{table_name}" execute self end
first(number = nil)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 28 def first(number = nil) @type = :object unless number number ? limit(number) : limit(1) end
limit(limit_condition = nil)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 33 def limit(limit_condition = nil) @limit = limit_condition if limit_condition self end
offset(offset_condition)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 38 def offset(offset_condition) @offset = offset_condition if offset_condition self end
order(order_conditions)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 43 def order(order_conditions) @order = order_conditions.to_s self end
save()
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 81 def save @type = :object execute data end
select(*select_conditions)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 13 def select(*select_conditions) @select = select_conditions self end
update(update_parameters)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 54 def update(update_parameters) @update_parameters = update_parameters @query = "UPDATE #{table_name} SET \ #{update_values.join(', ')} WHERE id = #{id}" self end
where(where_conditions, object = nil)
click to toggle source
# File lib/rollerskates/orm/query_builder.rb, line 18 def where(where_conditions, object = nil) if object @type = :object limit(1) end @columns << where_conditions self end