module Pup::OrmMethods
Public Instance Methods
all()
click to toggle source
# File lib/pup/model/orm_methods.rb, line 17 def all fields = columns_array.join(", ") data = DB.execute("SELECT id, #{fields} FROM #{table_name}") data.map! do |row| row_to_model(row) end data end
create(parameters)
click to toggle source
# File lib/pup/model/orm_methods.rb, line 8 def create(parameters) model = new parameters.each do |key, value| model.send("#{key}=", value) end model.save end
destroy(id)
click to toggle source
# File lib/pup/model/orm_methods.rb, line 46 def destroy(id) DB.execute("DELETE FROM #{table_name} WHERE id= ?", id) end
destroy_all()
click to toggle source
# File lib/pup/model/orm_methods.rb, line 50 def destroy_all DB.execute("DELETE FROM #{table_name}") end
find(id)
click to toggle source
# File lib/pup/model/orm_methods.rb, line 37 def find(id) fields = columns_array.join(", ") row = DB.execute( "SELECT id, #{fields} FROM #{table_name} WHERE id = ?", id ).first row_to_model(row) if row end
Private Instance Methods
row_to_model(row)
click to toggle source
# File lib/pup/model/orm_methods.rb, line 27 def row_to_model(row) model = new columns_array.each_with_index do |field, index| model.send("#{field}=", row[index + 1]) if row end model end