Клонирование сущностей от проекта к проекту разумнее всего выполнять экспортом (безотносительно ГИС) предыдущего проекта с «последующим импортом последующего» 😂 Т.е. вновь создаваемого. Если, конечно, последующий проект представляется более–менее типовым.
А сущности в проектах применяются как простые, так и составные, т.е. консолидирующие все прочие, простые. Простая сущность — это топик, не содержащий в своей структуре внедренных топиков. Своего рода неспецифицированное изделие. Сложные же сущности содержат в своей структуре внедренные топики и являются изделиями специфицированными. Как книжки, состоящие из отдельных страниц. Редакция от 19.12.2024.
Создан 14.03.2021 19:40:07
Клонировать сущности имеет смысл в два этапа: экспортировать ВООБЩЕ ВСЕ топики, а затем их импортировать; экспортировать топики, содержащие внедренные топики, отдельно, а затем также отдельно их импортировать как консолидирующие. Для лучшего осмысления: сначала клонируем все поголовье, а затем отдельно особо выдающихся баранов, которые назначены нами козлами, ведущими свои субпоголовья.
Оба этапа проводятся с применением экспортеров на основе Views и импортеров на базе Feeds.
Экспорт всех топиков предыдущего проекта с помощью Views
Экспорт всех топиков предыдущего проекта с помощью Views:
Настроить критерий фильтра: Content: Title:
Должен содержать (, иначе экспортироваться будут ВООБЩЕ ВСЕ ТОПИКИ. Это как минимум. Если необходимо экспортировать все топики конкретного исходного предыдущего проекта, то тогда в поле Значение следует подставлять префикс этого проекта, например (_PREFIX_.
Интересно было бы еще экспортировать и поля Body, заполненные ранее участниками предыдущего проекта. Для этого во Views придется добавить Content: Body. Будет экспортирована полная HTML–разметка, но импорт с помощью CSV или даже XML может не прокатить из–за разметки, в связи с необходимостью конвертирования угловых скобок во всяческие gt и т.п. Вообще разумно экспортировать (сохранять) поля Body в отдельные файлы образцов.
Вопрос пока остается открытым и требует дополнительной проработки.
Импорт топиков последующего проекта с помощью CSV
Импорт топиков последующего проекта с помощью CSV без поля Body предусматривает создание нод типа topic для нового (последующего) проекта. Для этого _PREFIX_ меняется на новое значение (с учетом требований системы классификации и кодирования проектов). Затем выполняется импорт. Настройки импортера:
Mappings Topic CSV Import (title и path):
В результате импорта создаются отдельные ноды (сущности) нового проекта, но без какой–либо связки между собой.
Экспорт «консолидирующих» топиков предыдущего проекта с помощью Views
Экспорт топиков — Title — Path — Entity Embed (Content). Расширенные — Настройки запроса — Уникальность!
Уникальность добавляется для того, чтобы не было дублирования. Для разделения списка внедренных топиков применен |.
Импорт «консолидирующих» топиков последующего проекта с помощью CSV
Импорт «консолидирующих» топиков последующего проекта с помощью CSV, настройки импортера:
Mappings CSV–импорт топиков (Title, Path, Entity Embed):
Tamper CSV–импорт топиков (Title, Path, Entity Embed):
В плагине Explode в качестве разделителя применен |.
В итоге все атомарные несвязанные топики консолидируются, связи входимости образуются автоматически и будут подсвечиваться.