Рейтинг:1

Заполните поле с несколькими значениями из значений, разделенных запятыми в поле

флаг kr

У меня есть данные в xml, которые я хочу импортировать в drupal. Который отлично работает. Но одно поле в xml заполнено списком терминов, разделенных запятыми. В друпале есть целевое поле, которое является многозначным полем. Мне они не нужны как таксономия, как многозначность для поиска solr. Я просто хочу расширить один, сорок, цветок,... значения для заполнения поля с несколькими значениями.

Это абсолютно не сработает. Любая помощь?

Вот последняя итерация (за последние два дня я много пробовал), которая эффектно терпит неудачу с такой ошибкой:

Ошибка: неподдерживаемые типы операндов в /var/www/dev.diercke.com/web/core/modules/migrate/src/Plugin/migrate/process/SubProcess.php в строке 206 #0 /var/www/dev.dircke. com/web/core/modules/migrate/src/MigrateExecutable.php(399): Drupal\migrate\Plugin\migrate\process\SubProcess->transform(Array, Object(Drupal\migrate_tools\MigrateExecutable), Object(Drupal\migrate \Row), 'field_stichwort...')
#1 /var/www/dev.dircke.com/web/core/modules/migrate/src/MigrateExecutable.php(205): Drupal\migrate\MigrateExecutable->processRow(Object(Drupal\migrate\Row))
#2 /var/www/dev.dircke.com/vendor/drush/drush/includes/drush.inc(206): Drupal\migrate\MigrateExecutable->import()
#3 /var/www/dev.diercke.com/vendor/drush/drush/includes/drush.inc(197): drush_call_user_func_array(массив, массив)
#4 /var/www/dev.diercke.com/web/modules/contrib/migrate_tools/src/Commands/MigrateToolsCommands.php(958): drush_op(массив)
#5 [внутренняя функция]: Drupal\migrate_tools\Commands\MigrateToolsCommands->executeMigration(Object(Drupal\migrate\Plugin\Migration), 'карта', массив)
#6 /var/www/dev.dircke.com/web/modules/contrib/migrate_tools/src/Commands/MigrateToolsCommands.php(418): array_walk(массив, массив, массив)
#7 [внутренняя функция]: Drupal\migrate_tools\Commands\MigrateToolsCommands->import('karte', Array)
#8 /var/www/dev.diercke.com/vendor/consolidation/annotated-command/src/CommandProcessor.php(257): call_user_func_array(массив, массив)
#9 /var/www/dev.dircke.com/vendor/consolidation/annotated-command/src/CommandProcessor.php(212): Consolidation\AnnotatedCommand\CommandProcessor->runCommandCallback(Array, Object(Consolidation\AnnotatedCommand\CommandData))
#10 /var/www/dev.diercke.com/vendor/consolidation/annotated-command/src/CommandProcessor.php(176): Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter(Array, Array, Object(Consolidation\AnnotatedCommand\CommandData ))
#11 /var/www/dev.dircke.com/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(311): Consolidation\AnnotatedCommand\CommandProcessor->process(Object(Symfony\Component\Console\Output\ConsoleOutput ), Массив, Массив, Объект (Консолидация\АннотированнаяКоманда\ДанныеКоманды))
#12 /var/www/dev.dircke.com/vendor/symfony/console/Command/Command.php(255): Consolidation\AnnotatedCommand\AnnotatedCommand->execute(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\ Компонент\Консоль\Выход\КонсольВыход))
#13 /var/www/dev.dircke.com/vendor/symfony/console/Application.php(1027): Symfony\Component\Console\Command\Command->run(Object(Drush\Symfony\DrushArgvInput), Object( Symfony\Component\Console\Output\ConsoleOutput))
#14 /var/www/dev.dircke.com/vendor/symfony/console/Application.php(273): Symfony\Component\Console\Application->doRunCommand(Object(Consolidation\AnnotatedCommand\AnnotatedCommand), Object(Drush\ Symfony\DrushArgvInput), Объект(Symfony\Component\Console\Output\ConsoleOutput))
#15 /var/www/dev.dircke.com/vendor/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\ Компонент\Консоль\Выход\КонсольВыход))
#16 /var/www/dev.dircke.com/vendor/drush/drush/src/Runtime/Runtime.php(118): Symfony\Component\Console\Application->run(Object(Drush\Symfony\DrushArgvInput), Объект(Symfony\Component\Console\Output\ConsoleOutput))
#17 /var/www/dev.diercke.com/vendor/drush/drush/src/Runtime/Runtime.php(48): Drush\Runtime\Runtime->doRun(Array, Object(Symfony\Component\Console\Output \КонсольВывод))
#18 /var/www/dev.dircke.com/vendor/drush/drush/drush.php(72): Drush\Runtime\Runtime->run(Array)
#19 /var/www/dev.dircke.com/vendor/drush/drush/drush(4): require('/var/www/dev.di...')
# 20 {основной}
Ошибка: неподдерживаемые типы операндов в Drupal\migrate\Plugin\migrate\process\SubProcess->transform() (строка 206 файла /var/www/dev.diercke.com/web/core/modules/migrate/src/Plugin/migrate /процесс/Подпроцесс.php).
 [предупреждение] Команда Drush завершилась аварийно.
...
процесс:
...
  field_stichworte: теги
  field_stichworte_einzeln:
    - плагин: взорвать
      источник: теги
      лимит: 10000
      разделитель: ,
    - плагин: углубить
    - плагин: sub_process
      процесс:
        field_stichworte_einzeln:
          - плагин: извлечь
            показатель:
              - 0
...
Рейтинг:2
флаг kr

Я нашел решение:

поля:
    ...
    -
    имя: ключевые слова_с_запятой
    метка: 'ключевые слова'
    селектор: ключевые слова
    ...
процесс:
    ...
    field_keywords_multi:
        - плагин: взорвать
          разделитель: ','
          источник: ключевые слова_с_запятой
        - плагин: single_value
        - плагин: multi_values
    ...
флаг jp
Отлично, большое спасибо!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.