Wie behebe ich einen Fehler wie "Class Shopware\Models\Attribute\Article has no field or association named lenzNoCustomergroupDiscount"

Machmal bekommt man im Shopware Backend merkwürdige Fehler anzeigt, die ähnlich wie der folgende Fehler aussehen.

[Semantical Error] line 0, col 2502 near 'lenzNoCustomergroupDiscount': Error: Class Shopware\Models\Attribute\Article has no field or association named lenzNoCustomergroupDiscount

In diesem Beitrag zeige ich, wie solch ein Fehler behoben werden kann, denn eigentlich ist das ganz einfach. Wenn eine solche Meldung erscheint, bedeutet das, dass das (Datenbank-)Model der Attribute nicht korrekt erstellt wurde. Man muss also nur das Attributs-Model neu generieren, damit alles wieder wie gewohnt funktioniert. Zunächst muss herausgefunden werden, welches Model neu generiert werden soll. Im obigen Fall ist es das Model des Artikels, also der Datenbank-Tabelle s_articles_attributes.

Nun, da wir wissen welches Model neu generiert werden muss, kann dies direkt durchgeführt werden. Dazu geht man im Shopware Backend auf "Einstellungen -> Freitextfeld-Verwaltung"

Shopware Freitext-Verwaltung aufrufen

Anschließend sieht man die Freitextfeld-Verwaltung. Dort muss nun das zur Fehlermeldung passende Model ausgewählt werden (siehe Screenshot 2). Ist das korrekte Model ausgewählt klickt man noch auf "Model generieren". Anschließend wir das Model neu generiert und der Fehler sollte verschwunden sein. Manchmal muss anschließend noch der komplette Cache unter "Einstellungen -> Caches/Performance -> Cache -> Alles Auswählen -> Cache leeren" geleert werden, damit es funktioniert.

Shopware Model auswählen und neu generieren