class Annotations2triannon::RevsDb
Attributes
db[RW]
db_config[RW]
Public Class Methods
log_model_info(m)
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 18 def self.log_model_info(m) @@log.info "table: #{m.table_name}, columns: #{m.columns}, pk: #{m.primary_key}" end
new()
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 22 def initialize @db_config = {} @db_config['host'] = ENV['REVS_DB_HOST'] || 'localhost' @db_config['port'] = ENV['REVS_DB_PORT'] || '3306' @db_config['user'] = ENV['REVS_DB_USER'] || 'revs' @db_config['password'] = ENV['REVS_DB_PASS'] || '' @db_config['database'] = ENV['REVS_DB_DATABASE'] || 'revs' options = @db_config.merge( { :encoding => 'utf8', :max_connections => 10, :logger => @@log }) @db = Sequel.mysql2(options) @db.extension(:pagination) # Ensure the connection is good on startup, raises exceptions on failure @@log.info "#{@db} connected: #{@db.test_connection}" end
Public Instance Methods
annotation(id)
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 41 def annotation(id) @db[:annotations][:id => id] end
annotation_ids()
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 49 def annotation_ids @db[:annotations].order(:user_id).select(:user_id, :id) end
annotations()
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 45 def annotations @db[:annotations] end
annotations_join_users()
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 53 def annotations_join_users @db[:annotations].join_table(:inner, @db[:users], :id=>:user_id) # @db[:annotations].join_table(:outer, @db[:users], :id=>:user_id) end
user(id)
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 62 def user(id) @db[:users][:id => id] end
users()
click to toggle source
# File lib/annotations2triannon/revs_db.rb, line 58 def users @db[:users] end