Správný návrh entit u vazby s příznakem

- Tirus91
 - Člen | 199
 
Ahoj všem,
už nějakou chvíli si tu lámu hlavu s mojí situací, kdy potřebuju
správně nadefinovat entity.
O co mi jde
Potřeboval bych mezi 2 entity (kurz a uživatel) přidat vazební tabulku,
která ale bude definovat, zda kurz absolvoval úšpěšně či naopak. Vazba
M:M mezi kurzem a uživatelem je jednoduchá, ale jak to udělat vč.
příznaku?
Definice v kurzu
	/**
	 * @ORM\ManyToMany(targetEntity="ClientPersonEntity", cascade={"persist"}, inversedBy="courses")
	 * @ORM\JoinTable(name="course_persons",
	 *        joinColumns={@ORM\JoinColumn(name="person_id", onDelete="cascade")},
	 *        inverseJoinColumns={@ORM\JoinColumn(name="course_id")}
	 *    )
	 * @var ArrayCollection|ClientPersonEntity[]
	 */
Definice uživatele
	/**
	 * @ORM\ManyToMany(targetEntity="CourseEntity", mappedBy="persons")
	 * @var ArrayCollection|CourseEntity[]
	 */
Vážně na toto musím definovat entitnu, která bude reprezentovat pouze vazbu M:M → M:M?

- Šaman
 - Člen | 2668
 
Tak zrovna tady bych to na samostatnou entitu viděl. Ne-li na jinou
strukturu (opravdu nikdy nebudeš evidovat kdy absolvoval, kdo zkoušel, možná
nějaké hodnocení, info o placení apod?)
Ale obecně mě vazba s příznakem zajímá. Nenapsal jsi jaký ORM
používáš, tohle vypadá na Doctrine?

- Tirus91
 - Člen | 199
 
@Šaman
promiň, nějak mi to vypadlo. Ano, jedná se o Doctrine.
V tuto chvíli je požadavkem jen to, aby se evidovalo, kdo je na kurz přihlášený (zadává to tam klient sám) a následně eviduje pouze, zda kurz absolvoval úspěšně či naopak. Další, co by možná stálo za to, aby se k tomu stavu rovnou evidoval nějaký dokument (přesněji certifikát).
Kdy a kde absolvoval daný uživatel kurz, je dáno v definici samotné entity kurzu, jelikož kurz sám o sobě nese tyto údaje. Nejedná se o neustále jeden kurz, který se následně opakuje.

- Oli
 - Člen | 1215
 
Myslím že jo. Já jsem to udělal v podstatě stejně jako je třeba tady http://stackoverflow.com/…-extra-field#…