X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/0a57413d3e5d3734f2f3d83df00abd861d80aee2..d74e2196a04a8e0303cd1056a620f4d439be787f:/vendor/gems/composite_primary_keys-1.1.0/lib/composite_primary_keys/migration.rb diff --git a/vendor/gems/composite_primary_keys-1.1.0/lib/composite_primary_keys/migration.rb b/vendor/gems/composite_primary_keys-1.1.0/lib/composite_primary_keys/migration.rb new file mode 100644 index 000000000..2a50404c5 --- /dev/null +++ b/vendor/gems/composite_primary_keys-1.1.0/lib/composite_primary_keys/migration.rb @@ -0,0 +1,20 @@ +ActiveRecord::ConnectionAdapters::ColumnDefinition.send(:alias_method, :to_s_without_composite_keys, :to_s) + +ActiveRecord::ConnectionAdapters::ColumnDefinition.class_eval <<-'EOF' + def to_s + if name.is_a? Array + "PRIMARY KEY (#{name.join(',')})" + else + to_s_without_composite_keys + end + end +EOF + +ActiveRecord::ConnectionAdapters::TableDefinition.class_eval <<-'EOF' + def [](name) + @columns.find { |column| + !column.name.is_a?(Array) && column.name.to_s == name.to_s + } + end +EOF + \ No newline at end of file