class Matrack::Queries
Public Class Methods
count()
click to toggle source
# File lib/orm/queries.rb, line 12 def count row = db_conn.execute "SELECT COUNT(*) FROM #{table_name}" row.hash_getter.values.first end
destroy(id)
click to toggle source
# File lib/orm/queries.rb, line 4 def destroy(id) execute "DELETE FROM #{table_name} WHERE (#{uniq_id} = #{id})" end
destroy_all()
click to toggle source
# File lib/orm/queries.rb, line 8 def destroy_all execute "DELETE FROM #{table_name}" end
update(id, hash)
click to toggle source
.update(1, title: “updated task again”, done: “yes”)
# File lib/orm/queries.rb, line 18 def update(id, hash) fields = hash.map{|k,v| "'#{k}'" " = " "'#{v}'"}.join(", ") qry = "UPDATE #{table_name} SET #{fields} WHERE (#{uniq_id} = #{id})" return "Record updated" if db_conn.execute qry end
Public Instance Methods
insert_hash()
click to toggle source
# File lib/orm/queries.rb, line 34 def insert_hash hash = {} instance_variables.each do |v| var = v.to_s if var == "@password" hash[var] = self.class.password_hash(instance_variable_get(v)) else hash[var] = instance_variable_get(v) end end hash end
save()
click to toggle source
# File lib/orm/queries.rb, line 25 def save hash = insert_hash attributes = hash.keys.map{ |k| k.sub("@","") }.join(", ") values = "#{hash.values}".gsub(/\[|\]/,"").gsub(/\"/,"'") query = "INSERT INTO #{self.class.table_name} (#{attributes}) VALUES (#{values});" self.class.execute query end