Ich versuche, die Benutzerrollen von einem bestimmten Benutzer über ein Symfony-Formular zu bearbeiten.Symfony bearbeiten Rollen von Benutzer gibt Fehler
Mein Formular enthält diese:
->add('role', ChoiceType::class, [
'expanded' => true,
'required' => false,
'multiple' => true,
'choices' => [
'ROLE_SUPER_ADMIN' => 'ROLE_SUPER_ADMIN',
'ROLE_TEST' => 'ROLE_TEST',
'ROLE_USER' => 'ROLE_USER'
],
]);
Dies ist meine Methode, die die Form
public function editUserAction(User $user, Request $request)
{
$userForm = $this->createForm(UserForm::class, $user);
$userForm->handleRequest($request);
if ($userForm->isSubmitted() && $userForm->isValid()) {
$this->userService->save($user);
return $this->redirectToRoute('user');
}
return $this->render(
'userEdit.html.twig',
[
'form' => $userForm->createView(),
]
);
}
Griffe Verfahren spart im Handler nur die Daten in die Datenbank persistierenden.
Der Fehler, die ich bekomme, wenn ich mehrere Rollen wählen versuchen, ist dies:
Erwartetes Argument vom Typ "Lehre \ Common \ Collections \ Arraycollection", "Array" gegeben
Können Sie Ihre Benutzerklasse veröffentlichen? Was steckt hinter $ this-> userService? – Chris
Wo genau erscheint Ihr Fehler? Poststacktrace. – svgrafov