Class: ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition
- Inherits:
-
TableDefinition
- Object
- TableDefinition
- ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition
- Includes:
- ColumnMethods
- Defined in:
- lib/arjdbc/postgresql/adapter.rb
Instance Method Summary collapse
-
#column(name, type = nil, options = {}) ⇒ Object
3.2 super expects (name).
- #primary_key(name, type = :primary_key, options = {}) ⇒ Object
Methods included from ColumnMethods
#cidr, #daterange, #hstore, #inet, #int4range, #int8range, #json, #ltree, #macaddr, #numrange, #tsrange, #tstzrange, #tsvector, #uuid, #xml
Instance Method Details
#column(name, type = nil, options = {}) ⇒ Object
3.2 super expects (name)
1362 1363 1364 1365 1366 1367 1368 1369 1370 |
# File 'lib/arjdbc/postgresql/adapter.rb', line 1362 def column(name, type = nil, = {}) super column = self[name] # NOTE: <= 3.1 no #new_column_definition hard-coded ColumnDef.new : # column = self[name] || ColumnDefinition.new(@base, name, type) # thus we simply do not support array column definitions on <= 3.1 column.array = [:array] if column.is_a?(ColumnDefinition) self end |
#primary_key(name, type = :primary_key, options = {}) ⇒ Object
1355 1356 1357 1358 1359 1360 |
# File 'lib/arjdbc/postgresql/adapter.rb', line 1355 def primary_key(name, type = :primary_key, = {}) return super unless type == :uuid [:default] = .fetch(:default, 'uuid_generate_v4()') [:primary_key] = true column name, type, end |