есть что-то, чего я не понимаю в Symfony 4.
У меня есть пользовательский избиратель, в котором я проверяю, есть ли у меня свойство true или false:
/**
* Vérifie si les essais gratuits sont activés
*
* @return boolean
*/
public function isFreeTrialEnabled(): bool
{
$stripeParameters = $this->manager->getRepository(StripeParameters::class)->findOneBy([]);
return $stripeParameters->getFreeTrial();
}
В моем контроллере у меня есть:
/**
* @Route("/trial", name="account_trial")
* @Security("is_granted(constant('\\App\\Security\\Stripe\\Voter\\StripeClientVoter::IS_FREE_TRIAL_ENABLED'))")
*
* @param Request $request
* @param UserPasswordEncoderInterface $encoder
* @param SubscriptionHelper $subscriptionHelper
* @param EntityManagerInterface $manager
* @param StripeClient $stripeClient
* @return Response
*/
public function trialAction(Request $request, UserPasswordEncoderInterface $encoder, SubscriptionHelper $subscriptionHelper , EntityManagerInterface $manager, StripeClient $stripeClient)
{ //... }
Так что, если голос возвращает значение true, он пропускает меня. Если он возвращает false, он должен поставить исключение отказа в доступе.
Однако, когда он возвращает мне false, он возвращает меня прямо на страницу входа