Я был успешным в создании дополнительной таблицы в PrestaShop таблице продукции Повсеместно остальное апи из WebService, однако ссылка апи http://127.0.0.1/prestashop/api/wb3d/1 wb3d является новая таблица, которая Я создал в webservice. Которая содержит путь к каталогу изображений где-то в Интернете. Эта связь при открытии показывает данные, которые были сохранены в базе данных, как показано на следующем рисунке нижеДобавление новой таблицы в REST API из PrestaShop WebService
модели это имя каталога в Интернете, так что это апи (wb3d) было связано с Таблица продуктов в webservice link: http://127.0.0.1/prestashop/api/products/1, когда я открываю эту ссылку. Запись ассоциации показана, но данные не отображаются ** см. Ниже изображение **
В выделенной области отображается таблица wb3d, связанная с таблицей продуктов, через точку api webservice. Я не могу связать данные истории wb3d с данными таблицы продуктов. Так что я могу использовать его в других устройствах с помощью веб-сервиса
Это то, что я пытался до сих пор
<?php
class ProductMergeCore extends ObjectModel
{
public $product_id;
public $id_wb3d;
public $directory_name;
public static $definition = array(
'table' => 'wb3d',
'primary' => 'id_wb3d',
'fields' => array(
'id_wb3d' => array('type' => self::TYPE_INT, 'required' => true),
'product_id' => array('type' => self::TYPE_INT, 'required' => true),
'directory_name' => array('type' => self::TYPE_STRING, 'required' =>false, 'size' => 64),
),
);
protected $webserviceParameters = array();
}
?>
productmerge.php отвечает за создание записи ассоциированной таблицы в таблице продуктов.
<?php
Class Product extends ProductCore
{
public $extrafield;
public function __construct($id_product = null, $full = false, $id_lang = null, $id_shop = null, Context $context = null)
{
$this->webserviceParameters['associations']['wb3d'] = array('resource' => 'wb3d','fields' => array('directory_name' => array('required' => true)));
parent::__construct($id_product, $full, $id_lang, $id_shop, $context);
}
}
?>
В этом product.php, который для подмены класса продукта для прохождения дополнительных параметров через webserviceparameters() и затем вызвать родитель конструктора класса продукта
<?php
class WebserviceRequest extends WebserviceRequestCore
{
public static function getResources()
{
$resources=parent::getResources();
$resources['wb3d'] = array('description' => 'images path', 'class' => 'ProductMerge');
ksort($resources);
return $resources;
}
}
?>
WebserviceRequest.php класс является классом переопределения для класса WebserviceRequest, который показывает описание записи в таблице в webservice
Это файлы, необходимые для выполнения этого действия. То, что я пытаюсь достичь, - это связанная таблица (wb3d) должна быть доступна в таблице продуктов через webservice rest api call.
почему вы хотите, чтобы добавить его в класс продукта, если вы хотите получить информацию о каталоге продукта, попробуйте запросить wb3d webservice, который вы должны добавить в свой класс. –
wb3d - это каталог, в котором хранятся изображения в Интернете, поэтому я сохраняю путь в прямой ory_name в таблице wb3d. то, что мне нужно достичь, - это каталог продукта, который должен также включать этот каталог, поэтому мне нужно сделать больше, чем один вызов api с любого другого устройства, эти изображения принадлежат продукту, поэтому мне нужна эта таблица wb3d, связанная с продуктом table – abhishek
Я вижу product_id в wb3d, что делать? если вы видите количество запаса для продукта, оно хранится в уникальном веб-сервисе (stock_available), даже если оно включено в продукт asciations webservice, то, что я рекомендую использовать пользовательский веб-сервис для этого –