2013-11-11 3 views
0

Предположим, у меня есть Big and Ugly schema.rb, и никаких миграций, что является лучшим способом их создания, помимо этого с помощью ctr + c/crt + v. Плюс мне нужно, чтобы их считали allready migrated :). Учтите, что это нужно быть сгенерированы в рельсах 2.3.5 окр :(.Как сгенерировать файлы миграции с помощью schema.rb

+1

Вы запускаете 'rake db: schema: load'? – tommyd456

+0

... и почему ваша схема «большая и уродливая»? – tommyd456

+0

Это еще один вопрос))). Это не мой проект, я занимаюсь рефакторингом. 'rake db: schema: load' - будет генерировать файлы миграции? –

ответ

2

Сформировать миграции, а затем скопировать код schema.rb (без ActiveRecord::Schema.define(:version => x) do и end) в up или change метод.

+0

'кроме этого делать это ctr + c/crt + v'. Это займет много времени, делая так. –

+0

'cp db/schema.rb db/migrate/initial_migration.rb', а затем отредактировать? – jimworm

+0

Я понял. сгенерируйте большой файл миграции, используя большой файл схемы))). благодаря –

0

Единственные вы должны сгенерировать базу данных из вашего файла schema.rb с помощью команды rake db:schema:load. Будьте осторожны, так как rake db:schema:load удалит данные на вашем производственном сервере.

Если вы посмотрите на файл schema.rb, вы заметите это только имеет временную метку последней миграции, которая является версией схемы, а команды req чтобы воспроизвести его. Вы можете создать единую миграцию из нее и сделать все будущие изменения оттуда.

Смежные вопросы