Benutzer können campaigns
nur sehen, wenn sie ihnen zugewiesen sind. Die Tatsache, dass sie eine Kampagne sehen können, bedeutet nicht, dass sie daran teilnehmen. Ich möchte dem Benutzer die Möglichkeit geben, sich an der Kampagne zu beteiligen.Zusätzliches Feld in Viele-zu-viele-Beziehung
Ich benutze bidirektionale, ManyToMany Beziehung, Tabelle user_campaign
wurde automatisch erstellt. Gibt es eine Möglichkeit, ein zusätzliches Feld wie participating
hinzuzufügen? Ich möchte lieber keinen neuen Tisch erstellen.
Entity User.php
/**
* @ORM\ManyToMany(targetEntity="Reko\CampaignBundle\Entity\Campaign", inversedBy="users")
* @ORM\OrderBy({"id" = "DESC"})
* @ORM\JoinTable(name="user_campaign")
*/
protected $campaigns;
Entity Campaign.php
/**
* @ORM\ManyToMany(targetEntity="Reko\UserBundle\Entity\User", mappedBy="campaigns")
*/
protected $users;
Zusätzliche Daten auf einem 'm: n' bedeuten immer, dass eine zwischengeschaltete Entität benötigt wird, um diese zusätzlichen Daten zu übertragen. Die neue Entität hat dann eine "1: n" zu den zwei ursprünglichen Entitäten. – Yoshi