[英]How to add a custom callback method in configureListFields() sonata admin?
我想在奏鸣曲字段列表configureListFields()
上添加自定义回调方法
可以在configureDatagridFilters()方法中进行如下所示:
protected function configureDatagridFilters(DatagridMapper $filter)
{
$filter
->add('user', 'doctrine_orm_callback', array(
'callback' => array($this, 'customMethod'),
));
}
但是是否可以在configureListFields()方法中使用?
您尝试使用doctrine_orm_callback是正确的: Doctrine2 ORM管理员文档-参考-过滤器字段定义(2.2)-5.5.3。 打回来
使用提供的示例,并用您的预订替换注释 ,然后将条件应用于构建器 :
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper
->add('title')
->add('enabled')
->add('tags', null, array(), null, array('expanded' => true, 'multiple' => true))
->add('author')
->add('with_open_comments', 'doctrine_orm_callback', array(
'callback' => function($queryBuilder, $alias, $field, $value) {
if (!$value) {
return;
}
$queryBuilder->leftJoin(sprintf('%s.comments', $alias), 'c');
$queryBuilder->andWhere('c.status = :status');
$queryBuilder->setParameter('status', Comment::STATUS_MODERATE);
return true;
},
'field_type' => 'checkbox'
))
;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.