Wenn ich einen Benutzer mit FOSUserBundle Usermanager erstellen und dann will ich es unterschiedliche Entity hinzuzufügen wie folgt aus:Verwenden Benutzer von FOSUserBundle mit einem anderen Unternehmen
$log = new Log();
$log->setOwner($user)
-I-Fehler erhalten, dass „eine neue Einheit durch die gefunden wurde Beziehung". Es scheint, dass $user
, die mit FOSUserBundle
UserManager erstellt wird nicht standardmäßig EntityManager ($this->getDoctrine->getManager())
gesehen wird und es zur Datenbank hinzufügen möchte. Früher hat es funktioniert, aber mit einigen aktuellen FOSUserBundle
Update wurde es gestoppt. Zuvor konnte USER Manager die Benutzerentität zur Datenbank hinzufügen, und der EntityManager konnte die Protokolleinheit mit einem Verweis auf die Benutzerentität ($owner)
hinzufügen.
Irgendwelche Ideen, was los ist und wie Sie das beheben können?
Scheint, dass Sie die Log-Entität beibehalten sollten. Wann führst du den Flush aus? Der fos user manager behält den neu erstellten Benutzer? – Carlos
Ich erstelle Benutzer $ this-> userManager-> createUser(), setze E-Mail usw. Dann füge ich es zu Log mit $ log-> setOwner ($ user) hinzu, dann behalte ich Log und mache dann flush. Wenn ich $ this-> userManager-> updateUser ($ user, false) verwende; und mache dann flush für alles, was ich über den Fehler bekomme. Wenn ich $ this-> userManager-> updateUser ($ user) verwende; Benutzer wird gespeichert und EntityManager versucht dann, es erneut hinzuzufügen. – Tom
Haben Sie versucht, den Benutzer zu halten? Ich bin mir nicht sicher, ob der Manager das standardmäßig tut. – Carlos