Sha256: f4a4aed01ef09391b077b02ddd6022b50120cc8ad04933ff32ce24a00656f125
Contents?: true
Size: 1.15 KB
Versions: 1
Compression:
Stored size: 1.15 KB
Contents
module ActiveRecord module CreatingForeignKeys module SchemaStatements def create_table(table_name, options = {}) td = create_table_definition table_name, options[:temporary], options[:options], options[:as] if options[:id] != false && !options[:as] pk = options.fetch(:primary_key) do Base.get_primary_key table_name.to_s.singularize end td.primary_key pk, options.fetch(:id, :primary_key), options end yield td if block_given? if options[:force] && table_exists?(table_name) drop_table(table_name, options) end result = execute schema_creation.accept td unless supports_indexes_in_create? td.indexes.each_pair do |column_name, index_options| add_index(table_name, column_name, index_options) end end result end def foreign_key_options(from_table, to_table, options) # :nodoc: options = options.dup options[:column] ||= foreign_key_column_for(to_table) options[:name] ||= foreign_key_name(from_table, options) options end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activerecord-creating_foreign_keys-0.0.1 | lib/active_record/creating_foreign_keys/schema_statements.rb |