У меня есть миграция, которая добавляет индекс к существующей таблице, используя add_index
:
add_index :foo, [:foo_type, :bar_id, :baz_id], :unique => true
Однако мои поля достаточно длинные, чтобы они превышали максимальную длину ключа InnoDB,Согласно ответу Андерса Арптега до Как мне увеличить длину ключа в MySQL 5.1? , мне нужно сгенерировать SQL следующим образом:
CREATE UNIQUE INDEX `index_matches_on_foo_and_bar_id_and_baz_id` ON `matches` (`foo`(100), `bar_id`(100), `baz_id`(100))
Могу ли я сделать этов хорошем Rails-у, или я должен опускаться до использования сырого SQL в моей миграции?