Guten Tag ich würde gerne ein weiteres Attributfeld für die Artikel-Eigenschaften-Werte hinzufügen (analog zur Anleitung Schuhgrössen-Erweiterung). Die Datenbank-Tabelle konnte ich nun hinzufügen, indem ich über die install()-Methode eine neue Tabelle erstellen lasse. Leider kommt bei der Methode afterGetOptionsQueryBuilder in Bootstrap.php ein Fehler. afterGetOptionsQueryBuilder(): public function afterGetOptionsQueryBuilder(Enlight\_Hook\_HookArgs $arguments) { // get original builder $builder = $arguments-\>getReturn(); // add selection and join to original builder $builder-\>addSelect(array( 'attributes.pruHexColor' )); $builder-\>leftJoin('property.attribute', 'attributes'); $arguments-\>setReturn($builder); }
Der Fehler beim Aufrufen der Artikel-Eigenschaften im Menü: Fatal error: Uncaught exception 'Doctrine\ORM\Query\QueryException' with message 'SELECT options, attributes.pruHexColor FROM Shopware\Models\Property\Option options LEFT JOIN property.attribute attributes ORDER BY options.name ASC' in /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php:41 Stack trace: #0 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(483): Doctrine\ORM\Query\QueryException::dqlError('SELECT options,...') #1 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1029): Doctrine\ORM\Query\Parser-\>semanticalError('Identification ...') #2 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1688): Doctrine\ORM\Query\Parser-\>JoinAssociationPathExpression() #3 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1628): Doctrine\ORM\Query\Parser-\>JoinAssociationDeclaration() #4 /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1558): Doctrine\ORM\Query\Parser-\>Join() #5 /var/www/html/vendor/doctrine/orm/lib in /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php on line 63 503 Service Unavailable
Es muss daran liegen, dass die Value-Entity eines der Attribute fehlt. Hat jemand einen Hinweis, wie ich das lösen könnte?