Мой первый раз с Падрино и DataMapper. Если я правильно понял,Сохранение моделей и миграций в синхронизации
padrino g model Foo
сделаетmodels/foo.rb
, а такжеdb/migrate/001_create_foos.rb
.Чтобы создать индекс, мне нужно указать его в модели, а не в процессе миграции.
padrino rake dm:auto:{upgrade|migrate}
будет генерировать базу данных с моделей, не обращая внимания наdb/migrate
папку.
Итак, кажется, что миграция сохраняется только на всякий случай для обновления баз данных. Есть ли способ генерировать миграцию из модели? Если нет, у всех остальных также есть головная боль, которая пытается обновить миграцию по мере изменения вашей модели? Как люди пишут свои миграции?
Проблема в том, что я не мог найти способ сделать индексы, используя миграцию DM. Итак (если я чего-то не хватает), мне нужно автоматизировать. – Amadan
Я также не мог найти документацию для этого. Думаю, в этом случае вам нужно попытаться добавить оператор индекса после создания миграции. Подобно изменению 'column: name, String,: index => true' в блоке create_table. Исходный код для этого может помочь (https://github.com/datamapper/dm-migrations/blob/master/examples/sample_migration.rb) –
Я попробовал 'column: name, String,: index => true' в миграция; он не создавал индекс в SQL. (И это не в примере миграции.) – Amadan