Class: Ezframe::Model

Inherits:
Object show all
Defined in:
lib/ezframe/model.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(column_sets, db) ⇒ Model

Returns a new instance of Model.



30
31
32
33
# File 'lib/ezframe/model.rb', line 30

def initialize(column_sets, db)
  @column_sets, @db = column_sets, db
  @column_sets.model = self
end

Instance Attribute Details

#column_setsObject

Returns the value of attribute column_sets.



28
29
30
# File 'lib/ezframe/model.rb', line 28

def column_sets
  @column_sets
end

#dbObject

Returns the value of attribute db.



28
29
30
# File 'lib/ezframe/model.rb', line 28

def db
  @db
end

Class Method Details

.get_cloneObject



23
24
25
# File 'lib/ezframe/model.rb', line 23

def get_clone
  new(@base_column_sets.deep_dup, @base_db)
end

.initObject



16
17
18
19
20
21
# File 'lib/ezframe/model.rb', line 16

def init
  unless @base_column_sets
    init_column_sets
    init_db
  end
end

.init_column_setsObject



7
8
9
10
# File 'lib/ezframe/model.rb', line 7

def init_column_sets
  @base_column_sets = ColumnSets.new
  @base_column_sets.load_files('./columns')
end

.init_dbObject



12
13
14
# File 'lib/ezframe/model.rb', line 12

def init_db
  @base_db = Database.new
end

Instance Method Details

#create_one_table(table_name, column_set) ⇒ Object



45
46
47
48
49
# File 'lib/ezframe/model.rb', line 45

def create_one_table(table_name, column_set)
  col_h = column_set.get_hash(:db_type)
  mylog "create_one_table: col_h=#{col_h.inspect}"
  @db.create_table(table_name, col_h)
end

#create_tablesObject



35
36
37
38
39
40
41
42
43
# File 'lib/ezframe/model.rb', line 35

def create_tables
  @column_sets.tables.each do |table_name, column_set|
    begin
      create_one_table(table_name, column_set)
    rescue => e
      mylog("*** #{e.inspect}\n#{$@.inspect}")
    end
  end
end