Module: GlobalUid::SchemaDumperExtension
- Defined in:
- lib/global_uid/schema_dumper_extension.rb
Instance Method Summary collapse
Instance Method Details
#get_pk(table) ⇒ Object
19 20 21 22 23 24 25 26 |
# File 'lib/global_uid/schema_dumper_extension.rb', line 19 def get_pk(table) if @connection.respond_to?(:pk_and_sequence_for) pk, _ = @connection.pk_and_sequence_for(table) elsif @connection.respond_to?(:primary_key) pk = @connection.primary_key(table) end pk end |
#table(table, stream) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/global_uid/schema_dumper_extension.rb', line 4 def table(table, stream) super(table, io = StringIO.new) schema = io.string pk = get_pk(table) columns = @connection.columns(table) pkcol = columns.detect { |c| c.name == pk } use_global_uid = !(pkcol.extra =~ /auto/i) schema.sub!(/(create_table.*) do/, "\\1, use_global_uid: #{use_global_uid.inspect} do") stream.write(schema) stream end |