lib/activefacts/generate/rails/schema.rb in activefacts-1.2.1 vs lib/activefacts/generate/rails/schema.rb in activefacts-1.3.0

- old
+ new

@@ -141,16 +141,17 @@ from_columns = fk.from_columns.map{|column| column.rails_name} to_columns = fk.to_columns.map{|column| column.rails_name} foreign_keys.concat( if (from_columns.length == 1) + index_name = Persistence.rails_name_trunc('index_'+fk.from.rails_name+'_on_'+from_columns[0]) [ " add_foreign_key :#{fk.from.rails_name}, :#{fk.to.rails_name}, :column => :#{from_columns[0]}, :primary_key => :#{to_columns[0]}, :on_delete => :cascade" ]+ Array( # Index it non-uniquely only if it's not unique already: fk.jump_reference.to_role.unique ? nil : - " add_index :#{fk.from.rails_name}, [:#{from_columns[0]}], :unique => false" + " add_index :#{fk.from.rails_name}, [:#{from_columns[0]}], :unique => false, :name => :#{index_name}" ) else # This probably isn't going to work without Dr Nic's CPK gem: [ " add_foreign_key :#{fk.to.rails_name}, :#{fk.from.rails_name}, :column => [:#{from_columns.join(':, ')}], :primary_key => [:#{to_columns.join(':, ')}], :on_delete => :cascade"