У меня есть несколько (старых) Drupal-сайтов, которые необходимо заменить одним новым приложением Rails.Этот новый сайт должен содержать весь старый Drupal-контент.Этот старый Drupal-контент частично сломан (из-за почти 7 лет беспорядочных обновлений, прекращенных модулей и так далее).Тот факт, что это Drupal, вряд ли уместен, просто тот факт, что он вызывает некоторые несоответствия, странные имена и плохо нормализованные таблицы.
Контент, который необходимо импортировать в приложение Rails, прост: content (blog-записи), прикрепленные файлы (изображения) и комментарии.Я могу позволить себе роскошь двух баз данных, которые «устарели» (не в производстве), и еще две находятся в работе, но им разрешалось некоторое время отключаться / блокироваться (часы, дни).Таким образом, миграции не нужно оптимизировать по скорости или полностью экономить (это означает, что я могу позволить себе потерять комментарий, публикуемый при выполнении миграции)
Приложение Rails (3) в основном готово и используетТолько соглашения об активной записи.
Из-за ограничений (поврежденная, несовместимая база данных, несколько баз данных, нуждающихся в объединении), я предпочитаю писать миграции для этого, а не подключать мое новое приложение Rails к уродливой, несовместимой устаревшей базе данных.
Мои вопросы:
- Существуют ли какие-либо среды, гемы или инструменты, которые облегчают импорт в Rails: например, что-то, что позволяет просто отображать «старый-новый» в некоторых DSL.
- Илилегче написать мои миграции полностью на SQL: SQL-запросы, которые превратят старые данные в структуру, которая соответствует приложению Rails?Миграция происходит из MySQL-> MySQL.
- Или я должен просто подключить Activerecord к старым базам данных, перебрать каждую строку / результат и запустить Object.save!в моем приложении rails?