# Neue ManyToMany-Beziehung zu ArticleDetail

**URL:** <https://forum.shopware.com/t/neue-manytomany-beziehung-zu-articledetail/17274>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [10. Dezember 2013 um 17:14 UTC](https://forum.shopware.com/t/neue-manytomany-beziehung-zu-articledetail/17274 "2013-12-10T17:14:36Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![msnajdr](https://avatars.discourse-cdn.com/v4/letter/m/a587f6/32.png) [@msnajdr](https://forum.shopware.com/u/msnajdr)\
**Post date:** [10. Dezember 2013 um 17:14 UTC](https://forum.shopware.com/t/neue-manytomany-beziehung-zu-articledetail/17274/1 "2013-12-10T17:14:36Z")

</div>

Hallo Forum, ich möchte für ein Plugin eine neue ManyToMany-Beziehung zu ArticleDetail hinzufügen. Genauergesagt: ArticleDetail \<\> MeinZeug Ein ArticleDetail kann n MeinZeugs haben und ein MeinZeug kann n ArticleDetails zugeordnet werden. (Sorry für die bescheuerten „MeinZeug“-Namen, ist leider aus politischen Gründen notwendig…) In meiner Bootstrap.php lege ich das neue MeinZeug an: ` private function createDatabaseTables() { $this-\>registerCustomModels(); $em = $this-\>Application()-\>Models(); $tool = new \Doctrine\ORM\Tools\SchemaTool($em); $classes = array( $em-\>getClassMetadata('Shopware\CustomModels\Dings\MeinZeug') ); try { $tool-\>createSchema($classes); } catch (\Doctrine\ORM\Tools\ToolsException $e) { // ignore } } ` Im CustomModel MeinZeug habe ich die ManyToMany-Beziehung wie folgt definiert: ` /\*\* \* @ORM\ManyToMany(targetEntity="Shopware\Models\Article\Detail", mappedBy="meinZeugs") \* @ORM\JoinTable(name="s\_article\_meinzeug\_relations", \* joinColumns={ \* @ORM\JoinColumn(name="article\_id", referencedColumnName="id") \* }, \* inverseJoinColumns={ \* @ORM\JoinColumn(name="meinzeug\_id", referencedColumnName="id") \* } \* ) \* @var ArrayCollection \*/ protected $articles; ` Das createSchema() aus der Bootstrap legt auch brav die Tabelle ‚s\_meinzeug‘ an, die Tabelle ‚s\_article\_meinzeug\_relations‘ allerdings nicht. Sollte sie das? Ich hab’s zumindest so verstanden… Oder braucht es dafür im ArticleDetail-Model die meinZeugs-property? Die krieg ich da aber ohne den Core anzufassen gar nicht rein! Wäre für Hilfe echt dankbar! Schönen Gruß Martin

---

<div class="post-metadata">

**Author:** ![msnajdr](https://avatars.discourse-cdn.com/v4/letter/m/a587f6/32.png) [@msnajdr](https://forum.shopware.com/u/msnajdr)\
**Post date:** [10. Dezember 2013 um 17:30 UTC](https://forum.shopware.com/t/neue-manytomany-beziehung-zu-articledetail/17274/2 "2013-12-10T17:30:12Z")

</div>

Oops, hab’s doch selbst lösen können… 🕶 Tatsächlich werden alle notwendigen Tables problemlos angelegt, wenn man die ManyToMany-Beziehung als unidirectional definiert, also das mappedBy-Attribut bei der targetEntity weglässt: ` ... /\*\* \* @ORM\ManyToMany(targetEntity="Shopware\Models\Article\Detail") \* @ORM\JoinTable(name="s\_article\_meinzeug\_relations", ... ` (siehe auch: [http://docs.doctrine-project.org/en/2.0 … irectional](http://docs.doctrine-project.org/en/2.0.x/reference/association-mapping.html#many-to-many-unidirectional))

---

<div class="post-metadata">

**Author:** ![tonzen](https://avatars.discourse-cdn.com/v4/letter/t/ee59a6/32.png) [@tonzen](https://forum.shopware.com/u/tonzen)\
**Post date:** [23. Juli 2016 um 17:38 UTC](https://forum.shopware.com/t/neue-manytomany-beziehung-zu-articledetail/17274/3 "2016-07-23T17:38:33Z")

</div>

Hi, ich stehe gerade vor einem ähnlichen Problem wie du vor 3 Jahren mit “MeinZeug”. Also Many-ToMany.

Bei mir geht es um wiederkehrende Produktmerkmale, die im Artikel nur noch per Klick o.ä. zugeordnet werden sollen.  
Das ORM-Modell habe ich, eine separate Oberfläche zur Verwaltung der Merkmale habe ich auch schon hinbekommen.

Über ein separates Plugin versuche ich nun in der Produktdetailansicht in&nbsp;einem neuen Tab die Merkmale z.B. als Checkboxlist, Grid o.ä. aufzulisten.

Ich kann einen Tab in der Artikeldetailansicht erzeugen und kann&nbsp;auch Form-Elemente darin erzeugen, aber ich scheitere derzeit am Laden der Daten, d.h. ich müsste ja zunächst alle angelegten Merkmale laden&nbsp;um die Checkboxen darzustellen, vorhandene Verknüpfungen Artikel\<\>Merkmal&nbsp;laden um&nbsp;ggf. einige Checkboxen vorzubelegen&nbsp;und&nbsp;beim Speichern dann die Verknüpfungen zwischen Artikel und Merkmal speichern.

Da komme ich gerade echt nicht weiter …&nbsp;Kannst du mir sagen oder zeigen wie du das gelöst hast?&nbsp; ![Undecided](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/8ae622c50104e84c5003fedfcc22572813a67b41.png "Undecided")

Danke vorab.&nbsp;

&nbsp;

&nbsp;
