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:
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
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