Не зарегистрирован
Вход
Забыли пароль?
Регистрация
Подписаться
Сэкономьте время — перед вопросом на форуме узнайте, как найти ответ быстрее
По техническим проблемам необходимо обращаться в Консультационный центр

Поиск по форуму: 

Приглашаем в блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.

Форум  ->   Разработка плагинов, вопросы по API  ->  Добавить изображения через модель eshop_item/table

Раздел для разработчиков. Обсуждение создания плагинов, вопросы и пожелания по API Amiro.CMS

Добавлено: 25.03.15 16:57:43 #1



Регистрация: 24.03.15
Сообщений: 7


Обратиться по имени

Доброго времени суток! Добавляю изображения таким образом

  
$this->_oModel = AMI::getResourceModel('eshop_item/table');
                      $item_array [] = [
                            'cat_id' => $category_Id,
                            'announce' => $announce,
                            'header' => $name,
                            'body' => $name,
                            'sku' => $this->_oDb->escape($vendor_code),
                            'custom_field_226' => $url,
                            'custom_field_182' => $status,
                            'price' => $price,
                            'custom_field_361' => $manual,
                            'description' => $description,
                            'ext_img' => $pic_field,
                            'ext_img_small' => $pic_field,
                            'ext_img_popup' => $pic_field,
                            'ext_picture' => $pic_field,
                            'ext_popup_picture' => $pic_field,
                            'ext_small_picture' => $pic_field,
                            'id_external' => 'Nom' . $this->_oDb->escape($vendor_code),
                        ];


Потом
foreach ($item_array as $item) {
var_dump($item);
$oItem = $this->_oModel->add($item);
var_dump($oItem->getOriginFields());
$oItem->save();
}


Что я делаю не правильно?
Поля остаются в базе пустые, файл перед импортом существует.
Путь такой
_mod_files/ce_images/dir/file.png

Точка входа
define('ROOT_DIR', realpath(__DIR__ . '/../../');
set_include_path(ROOT_DIR);
$ROOT_PATH = ROOT_DIR . '/';



Добавлено: 26.03.15 10:59:56 #2

Амиро



Регистрация: 21.03.07
Сообщений: 261


Обратиться по имени

1. Попробуйте инициализировать модель следующим образом:
$oModel = AMI::getResourceModel(
    'eshop_item/table',
    array(
        array(
            'extModeOnConstruct' => 'common'
        )
    )
);

2. Сохраняйте товар следующим образом:
$oItem = $oModel->getItem()->setData($aItem);
$oItem->save();



Добавлено: 26.03.15 12:05:18 #3



Регистрация: 24.03.15
Сообщений: 7


Обратиться по имени

Не помогло.
Как проверить что "images extension is turned on" ?

Common Images extension fields description (will be able if Images extension is turned on for module):
ext_img - item image (string),
ext_img_small - item small image (string),
ext_img_popup - item popup image (string).
To override options for image autogeneration system functionality,
you can specify following Images extension options in fast environment context.
These options can be changed from module options interface at "Extension Images" section.



Добавлено: 26.03.15 12:19:43 #4

Амиро



Регистрация: 21.03.07
Сообщений: 261


Обратиться по имени

Мы проверяли в контексте отдельного скрипта
<?php

$AMI_ENV_SETTINGS = array(
    'mode'          => 'full',
    'disable_cache' => TRUE
);
require 'ami_env.php';

// ...

В инициализации модели замените 'common' на 'all', если не поможет, обратитесь в службу поддержки.





Создать новую тему

Всего тем: 6629
Всего сообщений: 27746
Всего зарегистрированных пользователей: 48918
Последний зарегистрированный пользователь: alexcool097