Guten Tag, ich erstelle gerade ein Frontend-Plugin für die neuste Version von Shopware (5.1.1) Das Plugin habe ich mit Hilfe von diesem Tool generiert: https://developers.shopware.com/blog/20 … cli-tools/ Das Plugin enthält ein Model, welches in der Bootstrap.php auch, meines erachtens, richtig angelegt wird. $this-\>registerCustomModels(); $em = Shopware()-\>Models(); $tool = new \Doctrine\ORM\Tools\SchemaTool($em); $tool-\>createSchema(array( $em-\>getClassMetadata('Shopware\CustomModels\Ticket\Ticket') ));
Wenn ich in meinem Controller das Model nutzen will: $ticketModel = Shopware()-\>Models()-\>getRepository('Shopware\CustomModels\Ticket\Ticket');
Bekomme ich folgende Fehlermeldung im Frontend (Fehlermeldung in der config.php eingeschaltet) Fatal error: Uncaught exception ‘Doctrine\Common\Persistence\Mapping\MappingException’ with message ‘Class ‘Shopware\CustomModels\Ticket\Ticket’ does not exist’ Normale Datenbankzugriffe per SQL funktionieren allerdings. Somit ist die DB Tabelle richtig. Eine Idee, was ich noch beachten muss? Danke im Voraus Heiko Ter
Dir fehlt in der bootstrap: /\*\* \* Register our custom models after initialisation. \* \* @return void \*/ public function afterInit() { // register our models $this-\>registerCustomModels(); }
Du musst Shopware bei jeder Initialisierung deines Plugins deinen namespace bekannt geben. Viele Grüße
1 „Gefällt mir“
Stimmt. Super, vielen Dank! Jetzt läuft es.