Neue ManyToMany-Beziehung zu ArticleDetail

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

Oops, hab’s doch selbst lösen können… :sunglasses: 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)

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 einem neuen Tab die Merkmale z.B. als Checkboxlist, Grid o.ä. aufzulisten.

Ich kann einen Tab in der Artikeldetailansicht erzeugen und kann 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 um die Checkboxen darzustellen, vorhandene Verknüpfungen Artikel<>Merkmal laden um ggf. einige Checkboxen vorzubelegen und beim Speichern dann die Verknüpfungen zwischen Artikel und Merkmal speichern.

Da komme ich gerade echt nicht weiter … Kannst du mir sagen oder zeigen wie du das gelöst hast?  Undecided

Danke vorab.