Class: Erde::DatabaseTransformer
- Inherits:
-
Object
- Object
- Erde::DatabaseTransformer
- Defined in:
- lib/erde/cli.rb
Instance Method Summary collapse
-
#initialize(url) ⇒ DatabaseTransformer
constructor
A new instance of DatabaseTransformer.
- #to_hash ⇒ Object
Constructor Details
#initialize(url) ⇒ DatabaseTransformer
Returns a new instance of DatabaseTransformer.
61 62 63 |
# File 'lib/erde/cli.rb', line 61 def initialize(url) @url = url end |
Instance Method Details
#to_hash ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/erde/cli.rb', line 65 def to_hash generated_hash = {} Sequel.connect(@url) do |db| db.tables.each do |table| generated_hash[table] = {} generated_hash[table]['columns'] = [] generated_hash[table]['relations'] = {} generated_hash[table]['columns'] = db.schema(table).map(&:first) db.foreign_key_list(table).each do |foreign_key| generated_hash[table]['relations'][foreign_key[:columns].first] = { 'table' => foreign_key[:table], 'column' => foreign_key[:key].first } end end end generated_hash end |