我正在为 Prestashop 1.7 编写一个自定义插件,用于在 OrderList 中添加一个新列,但我无法解决这个问题。
在本地环境中,它可以工作,但不能在生产站点上运行。
版本 Prestashop:1.7.7.4 php : 7.3.28
开发和生产之间的区别在于操作系统。开发机器上的 Windows 和生产机器上的 Debian。
我已经使用 Prestashop 1.7.7.3 和 1.7.7.4 测试了我的代码。
我的钩子:
<TransitionGroup component="ul">
{todos.map((todo) => (
<CSSTransition key={todo} timeout={700} classNames="item">
<li>
{todo}{" "}
<button
onClick={() => {
setTodos(todos.filter((t) => t !== todo));
}}
>
Delete
</button>
</li>
</CSSTransition>
))}
</TransitionGroup>
我的班级:
Path: /modules/mymodule/mymodule.php
/**
* @param array $params
*/
public function hookActionOrderGridDefinitionModifier(array $params)
{
/** @var GridDefinitionInterface $definition */
$definition = $params['definition'];
$definition
->getColumns()
->addAfter(
'country_name',
(new HtmlTypeColumn('ldDeliveryDate'))
->setName($this->l('Date de livraison'))
->setOptions([
'ModuleClass' => new MyModule(),
'ldDeliveryDate' => "Aujourd'hui"
])
)
;
}
错误:
Path : /modules/mymodule/src/Grid/Columns/HtmlTypeColumn.php
final class HtmlTypeColumn extends AbstractColumn {
public function getType() {
return 'custom_text';
}
protected function configureOptions(OptionsResolver $resolver)
$resolver
->setRequired([
'ModuleClass',
'ldDeliveryDate'
])
->setAllowedTypes('ModuleClass', 'object')
->setAllowedTypes('ldDeliveryDate', 'string');
}
}
有人有想法吗? 谢谢:)