Derzeit versuche ich, den GroupController von Mage_Adminhtml_Customer zu überschreiben, damit ich im Menü Kundengruppen Code zum Speichern meines benutzerdefinierten Felds hinzufügen kann. Wie Sie sich vorstellen können, funktioniert es nicht wirklich so, wie ich es möchte, was bedeutet, dass mein Controller von Magento bisher ignoriert wird, aber ich verstehe den Fehler, den ich gemacht habe, nicht. Hier sind die Schnipsel:
<?xml version="1.0" ?>
<config>
[...]
<admin>
<routers>
<adminhtml>
<args>
<modules>
<Mynamespace_CustomerGroupReturnable before="Mage_Adminhtml">Mynamespace_CustomerGroupReturnable</Mynamespace_CustomerGroupReturnable>
</modules>
</args>
</adminhtml>
</routers>
</admin>
</config>
Und der Controller:
require_once 'Mage/Adminhtml/Customer/controllers/GroupController.php';
class Mynamespace_CustomerGroupReturnable_GroupController extends Mage_Adminhtml_Customer_GroupController
{
public function saveAction()
{
die(':D'); //just for testing
}
}
Kann jemand sehen, was fehlt? Vielen Dank!
magento-1.7
adminhtml
controllers
HamuSumo
quelle
quelle
Mage/Adminhtml/Customer/controllers/GroupController.php
sollte seinMage/Adminhtml/controllers/Customer/GroupController.php
Antworten:
Legen Sie Ihre Controller-Datei in einem Admintml-Ordner ab. Verwenden Sie besser einen ähnlichen Ordnerpfad der Klasse, den Sie überschreiben möchten.
config.xml
Controller-Datei:
quelle
Ok, fang an zu testen.
Fügen Sie zuerst einen Würfel vor der Klassendefinition hinzu, um zu überprüfen, ob die Klassendatei geladen ist.
Fügen Sie dann ein Leerzeichen hinzu
<conf ig>
, um zu überprüfen, ob Ihre Konfigurationsdatei geladen ist.Überprüfen Sie das Backend ,
System > Config > Advanced
ob Sie die Ausgabe des Moduls verhindern kann (falls ja, diemodule.xml
inapp/etc/modules
zumindest geladen)Welche URL testest du? sollte sein:
http: //magento.local/ / group / save
Deaktivieren Sie den Authentifizierungsschlüssel im Backend (fragen Sie mich nicht wo), um einen Fehler mit dem fehlenden Authentifizierungsschlüssel in der URL zu vermeiden
Und die letzten Worte: Code sieht gut aus, ich denke, der Fehler liegt woanders.
quelle