Сложность с именем файла и filemime при использовании модуля Migrate - PullRequest
0 голосов
/ 12 ноября 2011

Я использую модуль Drupal 7 Migrate для создания серии узлов из файлов JPG и EPS.Я могу заставить их импортировать просто отлично.Но я замечаю, что когда я закончу импортировать их, если я смотрю на узлы, которые он создает, ни один из прикрепленных файловых полей и файлов миниатюр не содержит информацию об имени файла.

После проверки таблицы file_managed я вижу, что и имя файла, и имя файлаполя пустые ТОЛЬКО для файлов, которые я прикрепил через модуль миграции.Это также создает проблему с загрузкой файлов.

Теперь я думаю, что проблема связана с тем фактом, что я использую «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, язык и исходные поля для описания, заголовка и т. Д.

Он может генерировать эскизы из JPG.Но все еще отсутствуют эти столбцы данных в таблице БД.Я проследил через функции как мог, но я не вижу, что вызывает это.Я попытался запустить URI в таблице через функции, которые генерируют имя файла и filemime, и они выводят просто отлично.Как будто что-то удаляет только эти сегменты данных.

Кто-нибудь знает, что это может быть?Я использую модуль Drupal 7 Migrate версии 2.2.Он работает на Drupal 7.8.

Спасибо, Патрик

1 Ответ

1 голос
/ 15 ноября 2011

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

...