Class: KMDB::Property
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- KMDB::Property
- Includes:
- BelongsToUser, CustomRecord
- Defined in:
- lib/kmdb/models/property.rb
Class Method Summary collapse
Methods included from BelongsToUser
Methods included from CustomRecord
Class Method Details
.mass_create(values_strings) ⇒ Object
38 39 40 41 42 |
# File 'lib/kmdb/models/property.rb', line 38 def self.mass_create(values_strings) return if values_strings.empty? sql_insert = "INSERT INTO `#{table_name}` (`t`,`user_id`,`event_id`,`key`,`value`) VALUES\n" connection.execute(sql_insert + values_strings.join(",\n")) end |
.sql_for(hash, stamp: nil, user: nil, event_id: nil) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/kmdb/models/property.rb', line 17 def self.sql_for(hash, stamp: nil, user: nil, event_id: nil) user_name = hash.delete('_p') user ||= User.find_or_create(name: user_name) raise UserError.new "User missing for '#{user_name}'" unless user.present? stamp = Time.at hash.delete('_t') || stamp return if hash.empty? sql_values = [] hash.each_pair do |prop_name,value| next if BlacklistedProperty.include?(prop_name) key = Key.get(prop_name) value = value[0...255].scrub sql_values << sanitize_sql_array(['(?,?,?,?,?)', stamp,user.id,event_id,key,value]) end return if sql_values.empty? sql_values.join(",\n") end |