Aufruf der undefinierten Methode Mage_Directory_Helper_Data :: getRegionJsonByStore () beim Erstellen eines Administrator-Kundenauftrags


7

Das ist sehr seltsam. Ich habe sowohl App / Community als auch App / Local deaktiviert und App / Core durch Standard-Magento-Dateien ersetzt. Trotzdem wird immer wieder der folgende Fehler angezeigt:

Rufen Sie die undefinierte Methode Mage_Directory_Helper_Data::getRegionJsonByStore()in /var/www/site-root/app/code/core/Mage/Adminhtml/Block/Customer/Edit/Renderer/Region.php in Zeile 87 auf

Ich bin mir nicht sicher, wie ich von hier aus Fehler beheben soll.

Antworten:


8

Mage_Directory_Helper_Data::getRegionJsonByStore() wurde in Magento 1.8 eingeführt, daher klingt es so, als ob Ihre Mage_Directory_Helper_Data-Klasse aus einer älteren Version stammt.

Die wahrscheinlichste Erklärung ist ein Override in app/code/local. Sie haben nicht erklärt, wie Sie "App / lokal deaktiviert" haben, aber es hat wahrscheinlich nicht funktioniert.


Vielen Dank für Ihre Antwort. Was ich vor dem Absenden der Frage versucht hatte, war, das Modul schnell und hackig zu deaktivieren - sie umzubenennen, damit sie nicht gefunden wurden, den gesamten Cache zu deaktivieren und dann den Cache zu löschen, den Mag immer produziert. Ich dachte, ich hätte denselben Vorgang wiederholt, als ich dieses Verzeichnis deaktiviert habe, aber ich muss den Cache möglicherweise nicht geleert oder aktualisiert haben, bevor die Datei auf dem Server geändert wurde. Kurz gesagt, das Deaktivieren des ./app/code/local/Mage/Directoryhat den Trick getan.
TylersSN

2

Versuchen Sie zu überprüfen Configuration -> System -> Tools -> Compilation, ob es deaktiviert sein sollte. Wenn nicht, deaktivieren Sie es.

Wenn das Problem dadurch nicht behoben wird, versuchen Sie, die Datei app\code\core\Mage\Directory\Helper\Data.phpdurch die Originalkopie zu ersetzen , und sichern Sie Ihre Kopie natürlich für alle Fälle.


1

So beheben Sie fehlende Methoden:

  1. Wenn die Kompilierung aktiviert ist, kompilieren Sie den Cache neu und leeren Sie ihn.
  2. Deaktivieren Sie APC, wenn aktiviert.
  3. Aktivieren opcache Zeitstempel , wenn deaktiviert
  4. Aktivieren Sie Xdebug, setzen Sie einen Haltepunkt in Mage :: getModel () und verfolgen Sie, in welche Datei es aufgelöst wird. Wenn sich diese Datei außerhalb Ihres Dokumentstamms befindet, überprüfen Sie include_path.
  5. Wenn 4. in die richtige Datei aufgelöst wird, aber immer noch die Fehler angezeigt werden, starten Sie den PHP-Interpreter (PHP-Fpm oder Apache) neu.
  6. Wenn 5 das Problem behoben haben, 2 & 3 jedoch nicht, überprüfen Sie, ob andere Opcode-Caches aktiviert sind, und optimieren Sie sie.
  7. Wenn 5 das Problem behoben haben, Ihnen jedoch keine Opcode-Caches bekannt sind, wenden Sie sich an Ihren Hoster, um Informationen und Diagnosen zu erhalten.

Wenn keines der oben genannten Verfahren funktioniert hat, überprüfen Sie, ob Sie sich auf dem richtigen Server befinden.


0

Mage_Directory_Helper_Data::getRegionJsonByStore()existiert nicht bis Magento CE 1.7.0.2. Diese Methode erschien in 1.8+.

Es sieht aus wie ein Upgrade-Ergebnis. Aktualisieren Sie die Magiererweiterung über Magento Connect in admin?

Wenn ja, müssen Sie alle Magento Core-Module aktualisieren. Ein Upgrade per Magento Connect überspringt jedoch den lib/*Ordner. Versuchen Sie, den lib/*Ordner manuell zu aktualisieren .

Die andere mögliche Lösung besteht darin, Ihren Cache unter Admin-> System -> Cache-Verwaltung zu aktualisieren / zu deaktivieren. Und vergessen Sie nicht, auf die Schaltfläche "Magento-Cache leeren" zu klicken.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.