Я использую Symfony 3.4 и easycorp / easyadmin-bundle 1.17
Я пытаюсь использовать статическую функцию для параметров query_builder:
form:
fields:
...
- { property: 'customer', label: '', type_options: { query_builder: ['AppBundle\Repository\PersonRepository', 'getCustomer'] } }
хранилище:
class PersonRepository extends EntityRepository
{
public static function getCustomer(EntityRepository $er)
{
// dump($tokeStorage);
dump($er);
die;
$user = null; // how to get token_storage ?
$query = $er->createQueryBuilder('person')
->leftJoin('person.userCreated', 'user')
->andWhere('person.type = :type')
->setParameter('type', 2)
;
if (in_array("ROLE_ADMIN", $user->getRoles())) {
$query->andWhere('user.company = :company');
$query->setParameter('company', $user->getCompany());
} else {
$query->andWhere('user.id = :user');
$query->setParameter('user', $user->getId());
}
return $query;
}
}
Мне нужно добавить хранилище токенов, как я могу это сделать?
Я открыл 3 поста, посвященных этой теме, или я думаю, что решение "static" не будет хорошим, но ни одно из3 решения дают ожидаемый результат
[ пользовательский конструктор форм symfony easyadmin
[ объект типа поля формы symfony easyadmin со списком фильтров
заранее спасибо