如何解决Prestashop 1.7 - 覆盖 Symfony 表单约束
上下文
我正在尝试更改产品名称属性的约束并将字段长度增加到 300 个字符。
问题
在 src/PrestaShopBundle/Form/Admin/Product/Productinformation.PHP
中,我可以更改:
->add('name',TranslateType::class,[
'type' => FormType\TextType::class,'options' => [
'constraints' => [
new Assert\Regex([
'pattern' => '/[<>;=#{}]/','match' => false,]),new Assert\NotBlank(),new Assert\Length(['min' => 3,'max' => 128]),],])
到
->add('name','max' => 300]),])
而且……它有效。但是如果更新 PrestaShop 会发生什么。我需要一种更优雅的方式来做到这一点。
更新 #1
官方 PrestaShop Github 存储库上有 PR。我在等待答复:https://github.com/PrestaShop/PrestaShop/issues/23977
解决方法
经典的方法是覆盖模型,在这种情况下是/override/classes/Product.php
在静态 $definition 上,您将名称字段、大小属性从 128 更改为 300
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。