2015-06-17 5 views
1

У меня есть экземпляр Plone, который содержит некоторые структуры, которые мне нужно скопировать в новый экземпляр Plone (но гораздо больше, который нельзя копировать). Эти структуры представляют собой деревья документов («книги» папок и документов Archetypes), которые используют ресурсы (например, изображения и анимации, по UID) вне этих деревьев (в отдельной структуре, которая, конечно, содержит много ресурсов, которые не нужны тем, которые необходимы скопировать).Как передать структуру из одного Plone в другой

Я попытался скопировать все данные и удалить ненужные части, но это занимает очень много времени (!), Поэтому я ищу лучший способ.

Таким образом, идея состоит в том, чтобы пересечь мой маленький лес деревьев документов и перенести их и необходимые им ресурсы (редко перестраивая эту отдельную структуру) на новый экземпляр Plone. У меня есть полный доступ к обоим.

Есть ли способ предложить это? Или я должен экспортировать все из них, включая структуру ресурсов, и удалить все ненужные вещи после этого?

ответ

4

Я узнал, что каждый раз, когда я делаю этот вид миграции вручную, я делаю ошибки, которые заставляют меня делать это снова.

OTOH, если миграция автоматизирована, я могу запустить ее, узнать, что я сделал неправильно, исправить миграцию и сделать это снова и снова, пока я не удовлетворен.

В этом контексте, чтобы автоматизировать миграцию, советую вам взглянуть на collective.transmogrifrier.

+0

Есть ли разница между 'collect.transmogrifier' и [quintagroup.transmogrifier] (http://projects.quintagroup.com/products/wiki/quintagroup.transmogrifier)? – Tobias

+1

quintagroup.transmogrifier добавляет дополнительные чертежи для c.transmogri fier и plone.app.transmogrifier. «Он также переопределяет шаг GenericSetup Content, поэтому этот пакет может быть использован по-умолчанию для переноса содержимого сайта». Я иногда обнаружил, что мне нужно проверить q.transmogrifier от источника, прежде чем я смогу заставить его работать. – Danimal

3

Я рекомендую jsonmigrator - это твист на коллективный.трансмогенификатор, упомянутый Godefroid. Смотрите мой блог на это here Вы можете даже использовать его, чтобы перейти от архетипов к типам Ловкость (вам просто нужно соответствие имена полей (и соответствующие типы грубо говоря).

Попытка выбрать ресурсы для импорта будет сложно, хотя. Возможно, вы можете найти способ итерации по деревьям ваших документов. & «коснитесь» (в смысле unix) любого ресурса, который вы используете. Затем скопируйте только ресурсы, чья «метка времени» указывает, что они были затронуты.

+0

Я думал о создании «набора» UID; так как «старый» (продолжение) сайт - Plone 4.x, я думаю, что смогу следовать стратегии «экспорт, затем импорт». Можно ли обрабатывать двоичные данные через JSON? Тем не менее, ваш блог содержит много интересного чтения и ссылок, что может занять некоторое время, чтобы отработать ... – Tobias

+0

У меня есть двоичные данные, работающие с jsonmigrator (файлы PDF, изображения и т. Д.) ... возможно, это был но я не уверен, будет ли это «просто работать» или нет! Файл [config file] (https://github.com/djowett/collective.jsonmigrator/blob/master/collective/jsonmigrator/config_plone3.cfg) на моей вилке, который, кажется, мне еще предстоит объединить, может дать вам больше ключ, но ожидайте, что ваши руки станут грязными! – Danimal

+0

Примечание (в связи с вашим ответом на ответ Godefroid), поскольку jsonmigrator избегает использования шага Generic Setup, который добавляет q.transmogrifier, я обычно могу (и делать) избегать использования q.transmogrifier при использовании jsonmigrator – Danimal

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

  • Нет связанных вопросов^_^