我创建了一个自定义选民,可以加载每个http请求。它应该是什么,因为它应该授予用户访问权限,或拒绝(或弃权)。只有在设置了会话中的某些变量时,才应每次加载此查询。所以我写了异常和所有,但即使这个查询运行一次。加载页面需要十倍的时间。奇怪的是,这个查询非常简单。
我的投票功能:
public function findPermissionsByUserAndAcademy(Academy $academy, User $user)
{
$repository = $this->entityManager->getRepository('AcademyUsers');
$academyUsers = $repository->findOneBy(array(
'academy' => $academy,
'user' => $user));
$permissions = $academyUsers->getAcademyRole()->getPermissions();
return $permissions;
}
该功能是正常的学说功能:
$elements = $em
->getRepository('AppBundle:MyElementsEntity')
->findByLinkType($linkType); // This returns SEVEN elements
foreach ($elements as $e) {
// $beginDate is a \DateTime
$beginDate = $e->getBeginDate();
$beginDate->setTime(8, 15);
$endDate = $e->getEndDate();
$endDate->setTime(9, 39);
}
$em->flush();
如果我评论这个功能,一切都按预期工作,但是当它运行时,每个页面需要加载10次。