Как перенести данные с другой CMS на Wagtail? - PullRequest
1 голос
/ 08 мая 2020

В нашей старой системе CMS миллион записей. Теперь мы хотим перенести старые данные в Wagtail. Как импортировать эти данные? Я знаю, что мне нужно создать модель для хранения данных, но как импортировать записи в таблицы моделей в Wagtail? Следует ли мне немедленно вставить эти записи в базу данных MySql? Или использовать какие-то API или функции трясогузки?

Большое спасибо.

1 Ответ

1 голос
/ 08 мая 2020

Я несколько раз применял следующий подход при переносе сложных сайтов Drupal на Wagtail:

  1. Экспорт устаревшего контента в некотором формате, которым я могу легко управлять с помощью python. (Сайты Drupal, с которыми я работал, сгенерировали экспорт CSV, но вы могли так же легко работать с JSON или XML; все, что вы можете заставить свою старую систему выплюнуть.)

  2. Написать Django команда управления , которая анализирует ваш экспорт и создает объекты страницы Wagtail. Я нашел эти инструкции полезными, хотя на шаге 4 я использую page.save_revision().publish() вместо page.save().

У вас намного больше записей, чем у меня когда-либо имели дело, так что, возможно, вам будет проще пропустить шаг 1 и запросить старую базу данных непосредственно в команде управления.

...