Module: PersonDb
- Defined in:
- lib/persondb/models/forward.rb,
lib/persondb.rb,
lib/persondb/reader.rb,
lib/persondb/schema.rb,
lib/persondb/version.rb,
lib/persondb/models/person.rb
Overview
forward references
require first to resolve circular references
Defined Under Namespace
Modules: Model
Classes: CreateDb, PersonReader
Constant Summary
collapse
- VERSION =
'0.4.0'
- Models =
note: for convenciene (and compatibility) add alias Models for Model namespace
e.g lets you use include PersonDb::Models
Model
Class Method Summary
collapse
Class Method Details
.banner ⇒ Object
26
27
28
|
# File 'lib/persondb.rb', line 26
def self.banner
"persondb/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
end
|
.create ⇒ Object
39
40
41
42
43
|
# File 'lib/persondb.rb', line 39
def self.create
CreateDb.new.up
Model::Prop.create!( key: 'db.schema.person.version', value: VERSION )
end
|
.delete! ⇒ Object
45
46
47
48
|
# File 'lib/persondb.rb', line 45
def self.delete!
Model::Person.delete_all
end
|
.root ⇒ Object
30
31
32
|
# File 'lib/persondb.rb', line 30
def self.root
"#{File.expand_path( File.dirname(File.dirname(__FILE__)) )}"
end
|
.setup_in_memory_db ⇒ Object
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/persondb.rb', line 55
def self.setup_in_memory_db
ActiveRecord::Base.logger = Logger.new( STDOUT )
ActiveRecord::Base.establish_connection(
adapter: 'sqlite3',
database: ':memory:' )
LogDb.create
ConfDb.create
TagDb.create
WorldDb.create
PersonDb.create
end
|
.tables ⇒ Object
50
51
52
53
|
# File 'lib/persondb.rb', line 50
def self.tables
puts " #{Model::Person.count} persons"
end
|
.test_data_path ⇒ Object
34
35
36
|
# File 'lib/persondb.rb', line 34
def self.test_data_path
"#{root}/test/data"
end
|