Моя проблемная трассировка:
Type error: Argument 4 passed to
Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken::__construct() must be of the type array, null given, called in ...\vendor\symfony\security\Core\Authentication\Provider\UserAuthenticationProvider.php on line 90
а дело в том:
/**
* @ORM\Column(type = "array")
*/
private $role;
то же самое для геттера и сеттера,
поэтому, если я хорошо понимаю, он пытается получить доступ к массиву класса аутентификации конструкции, который является ролью, но он говорит, что роль равна нулю. так что это мой класс входа в систему:
$error = $authenticationUtils->getLastAuthenticationError();
$lastUsername = $authenticationUtils->getLastUsername();
if ($this->getUser()) {
$this->addFlash('danger', 'You are already identified on TCELab');
return $this->redirectToRoute("default");
}
return $this->render('user/sign_in.html.twig', array(
'last_username' => $lastUsername,
'error' => $error,
));
обычно это должно работать. Как я могу заставить это работать?






В сущности «Пользователь» установите значение по умолчанию для атрибутов roles.
/**
* @ORM\Column(type = "array")
*/
private $roles = [];
или же
public function __construct()
{
$this->roles = [];
}
Спасибо, я нашел, это потому, что я назвал роль и отметил роли ....