Получить значение из нового столбца
Я пытаюсь изучить структуру OpenCart, и пытаюсь создать новый столбец под таблицей product
, Новый столбец "тест"
Затем я пытаюсь получить данные под этой страницей index.php?route=checkout/cart
(замените цену на тестовую колонку)
catalog\controller\checkout\cart.php
...
$this->data['products'][] = array(
'key' => $product['key'],
'thumb' => $image,
'name' => $product['name'],
'model' => $product['model'],
'option' => $option_data,
'quantity' => $product['quantity'],
'stock' => $product['stock'] ? true : !(!$this->config->get('config_stock_checkout') || $this->config->get('config_stock_warning')),
'reward' => ($product['reward'] ? sprintf($this->language->get('text_points'), $product['reward']) : ''),
'price' => $product['test'], //<-- new column
'total' => $total,
'href' => $this->url->link('product/product', 'product_id=' . $product['product_id']),
'remove' => $this->url->link('checkout/cart', 'remove=' . $product['key'])
);
Проблема в том, что я не получаю никакого вывода, и я не уверен, как работать с моделью. Какой запрос / функция связан с этой страницей?
1 ответ
Проблема в том, что $products
которые доступны на cart.php
контроллеры извлекаются из сеанса, в котором они были сохранены в ранее заданной структуре, поэтому нет test
индекс, и вы должны получить Notice: undefined index 'test' in ...
, $products
получены
foreach ($this->cart->getProducts() as $product) {
//...
}
Увидеть /system/library/cart.php
и метод getProducts()
чтобы понять, о чем я говорю.
Если вы хотели бы использовать это в catalog/controller/product/category.php
или же catalog/controller/product/product.php
контроллеры, код, который вы пытаетесь, будет работать.
Если вы замените цену во всех списках продуктов и деталях продукта, эти контроллеры:
- товар/
- category.php
- manufacturer_info.php
- product.php
- search.php
- special.php
- модуль /
- bestseller.php
- featured.php
- latest.php
- special.php
с вашей ценностью, итоговая цена в корзине будет вашей тестовой стоимостью.