#file #migration #drupal-7 #data-migration
#файл #миграция #drupal-7 #данные-миграция
Вопрос:
Я использую модуль переноса Drupal 7 для создания серии узлов из файлов JPG и EPS. Я могу заставить их импортировать просто отлично. Но я замечаю, что когда я закончу их импорт, если я посмотрю на созданные им узлы, ни один из прикрепленных файлов filefield и thumbnails не содержит информации об имени файла.
После проверки таблицы file_managed я вижу, что поля filename и filemime пусты только для файлов, которые я прикрепил через модуль миграции. Это также создает проблему с загрузкой файлов.
Теперь я думаю, что проблема связана с тем фактом, что я использую «file_link» вместо «file_copy» в качестве файловой операции, которую я указываю. Проблема в том, что я импортирую около 2 ТБ (это терабайты) файлов изображений. Нам пришлось отправить специальный запрос в Rackspace, чтобы получить доступ к такому большому объему дискового пространства на нашем сервере. Итак, я не могу выполнить копирование из одного каталога в другой из-за проблем с пространством. Итак, «file_link» кажется очевидным выбором.
Теперь вы, вероятно, хотите посмотреть, как я это делаю, поэтому вот фрагмент кода:
$jpg_arguments = MigrateFileFieldHandler::arguments(NULL,
'file_link', FILE_EXISTS_RENAME, 'en', array('source_field' => 'jpg_name'),
array('source_field' => 'jpg_filename'), array('source_field' => 'jpg_filename'));
$this->addFieldMapping('field_image', 'jpg_uri')
->arguments($jpg_arguments);
Как вы можете видеть, я не указываю базовый путь (точно так же, как в файле примера beer.inc). Я установил file_link, язык и поля источника для описания, заголовка и alt.
Он способен генерировать эскизы из файлов JPG. Но все еще отсутствуют эти столбцы данных в таблице БД. Я проследил за функциями, насколько мог, но я не вижу, что является причиной этого. Я попытался запустить uri в таблице через функции, которые генерируют имя файла и filemime, и они выводят просто отлично. Похоже, что что-то удаляет только эти сегменты данных.
У кого-нибудь есть идеи, что это может быть? Я использую модуль переноса Drupal 7 версии 2.2. Он работает на Drupal 7.8.
Спасибо, Патрик
Ответ №1:
Хорошо, итак, я нашел ответ на еще один свой вопрос. На самом деле это проблема с самим модулем переноса. Проблема задокументирована здесь. Я отменю эту награду (как только выясню, как).
Комментарии:
1. На самом деле я отправил проблему и исправление для проблемы. Итак, я выполнил всю работу. Извините за щедрость, ребята.