我创建了一个从远程资源添加产品的模块,但我想在浏览器中显示产品之前检查产品的价格和可用性。
我试图在 Bootstrap 模块中更改它:
<?php
public function hookHeader($params)
{
$controller = $this->context->controller;
if(!($controller instanceof ProductController)) {
return;
};
/* @var $controller ProductController */
$product = $controller->getProduct();
$product->name = 'Test Name';
$product->price = 20;
$product->quantity = 5;
$product->update();
}
但是旧值已经在模板中。
然后我试图覆盖ProductController:
<?php
public function init()
{
parent::init();
$product = $this->product;
/* @var $product Product */
$product->price = 10;
$product->quantity = 10;
$product->update();
}
但发生与第一个示例相同的情况。
所以问题是:
- 在输出绘制之前检查远程数据和更新产品的最佳位置在哪里?
- 更新价格和数量的最佳方法?直接到类还是使用 StockAvailableCore 类?