Ich versuche, Benutzer zu Rollengruppen hinzuzufügen, aber aus irgendeinem Grund kann ich dies nicht erreichen. Ich folgte der Dokumentation auf Symfony Website http://symfony.com/doc/current/bundles/FOSUserBundle/groups.html. Das Objekt ist erstellt und es ist korrekt, aber auf Flush passiert nichts.FOSUserBundle Benutzer addGroup speichert nicht in der Datenbank
UserRoleGroups sind bereits im DB definiert.
Spar
$oGroup = $this->em->getRepository('UserBundle:UserRoleGroups')->findOneByName($sRole);
$oUser->addGroup($oGroup);
$this->em->persist($oUser);
$this->em->flush();
Alle anderen Änderungen, die ich auf $ oUser Objekt tun, außer für diese gespeichert.
Benutzer Entity
class User extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\ManyToMany(
* targetEntity="App\UserBundle\Entity\UserRoleGroups"
*)
* @ORM\JoinTable(
* name="users_user_role_group",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")}
*)
*/
protected $userRolesGroup;
UserRoleGroup Entity
class UserRoleGroups extends BaseGroup
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
Bitte geben Sie den entsprechenden Code an. –
Ich habe meine Frage mit dem Code aktualisiert. –