1
我想知道如何在formFilter中添加条件。Sylius,如何重写标准?
例如,在后端产品索引中。 默认情况下,只有“名称”和“参考”过滤器。我想添加任何字段的过滤器。
我设法自定义字段添加到窗体,但是当我点击过滤器按钮,我的自定义字段被忽略。
我该如何修复它?
我想知道如何在formFilter中添加条件。Sylius,如何重写标准?
例如,在后端产品索引中。 默认情况下,只有“名称”和“参考”过滤器。我想添加任何字段的过滤器。
我设法自定义字段添加到窗体,但是当我点击过滤器按钮,我的自定义字段被忽略。
我该如何修复它?
您必须使用自己的ProductRepositoryClass扩展/替换 Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository.php
。 您需要修改的方法是上线88:createFilterPaginator
<?php
namespace Acme\AppBundle\Doctrine\ORM;
use Sylius\Bundle\ProductBundle\Doctrine\ORM\ProductRepository as BaseProductRepository;
class ProductRepository extends BaseProductRepository {
public function createFilterPaginator($criteria = array(), $sorting = array(), $deleted = false)
{
// ... your filtering logic here.
}
}
然后将其注册在cofiguration,因此它将取代sylius产品库。
sylius_product:
resources:
product:
classes:
repository: AppBundle\Entity\Product\ProductRepository
如果你想/需要调用diferent方法吴丹的createFilterPaginator,你将不得不也覆盖控制器。