Frage

Daher habe ich während der Entwicklung eines Magento 2-Projekts mit dem folgenden Befehl in den Entwicklermodus gewechselt:

php bin/magento deploy:mode:set developer

Alles gut, ich habe diese Nachricht erhalten und die Website gut entwickelt:

Aktueller Anwendungsmodus:Entwickler.

Aus irgendwelchen Gründen wollte ich zurück in die default modus nur um das Verhalten der Website in diesem Modus zu überprüfen.Keine besonderen Gründe um ehrlich zu sein, ich wollte nur wieder in diesen Modus wechseln.

Also habe ich den folgenden Befehl ausgeführt:

php bin/magento deploy:mode:set default

Aber ich habe diesen seltsamen Fehler ohne weitere Erklärungen bekommen:

Cannot switch into given mode "default"

Ich habe die folgende Datei überprüft, die die Moduseinstellungen behandelt Magento/Deploy/Console/Command/SetModeCommand.php und hier ist, was ich gefunden habe:

switch($toMode) {
    case State::MODE_DEVELOPER:
        $modeController->enableDeveloperMode();
        break;
    case State::MODE_PRODUCTION:
        if ($skipCompilation) {
            $modeController->enableProductionModeMinimal();
        } else {
            $modeController->enableProductionMode();
        }
        break;
    default:
        throw new LocalizedException(__('Cannot switch into given mode "%1"', $toMode));
}

Wie komisch ist das denn, Magento 2 wird im Standardmodus ausgeliefert, aber Sie können nicht zu diesem bestimmten Modus zurückkehren.Was ist der Grund dafür?

Bearbeiten:für Interessierte habe ich am Ende ein Problem auf Github erstellt: https://github.com/magento/magento2/issues/4292

War es hilfreich?

Lösung

Der Standardmodus ist weder hier noch dort.

mode overview

Das Magento-Team möchte wirklich, dass Sie während der Entwicklung entweder den Produktionsmodus auf Ihrer Live-Site oder den Entwicklermodus verwenden.Der Grund, warum der Standardmodus existiert, besteht darin, etwas zu haben, das zumindest vernünftig ausgeführt werden kann, wenn es ohne weiteres Eingreifen direkt aus dem heruntergeladenen Code bereitgestellt wird.

Durch Laufen php bin/magento deploy:mode:set sie haben sich als fähig identifiziert und benötigen den Standardmodus nicht.Da es keinen Grund gibt, in den Standardmodus zurückzukehren, hat Magento keine Möglichkeit dafür bereitgestellt.

Andere Tipps

Der Standardmodus ist nur für die Installation von Magento 2 vorgesehen.
Es sollte nicht für die Entwicklung oder Produktion verwendet werden.
Nach der Installation können Sie nur zwischen dev und prod wechseln.

Quelle:Alan Kent @MagentoImagine2016

Als Windows-Entwickler möchte Magento im Entwicklermodus symbolische Links zu den statischen Assets erstellen, verwendet jedoch den Linux-Befehl und nicht den Windows-Befehl.Dies führt zu vielen Fehlern in den JS- und CSS-Dateien.

Um in den Standardmodus zurückzukehren, öffnen Sie:-

app/etc/env.php

Und Veränderung:-

'MAGE_MODE' => 'developer',

Zurück zu:-

'MAGE_MODE' => 'default',

Und stellen Sie statische Dateien erneut bereit.

Ich bin mit dem gleichen Problem gelaufen, habe es aber geändert env.php manuell funktioniert.

**set mode 2.3.x**

Jetzt erlaubt uns Magento, von 2.3 in den Standardmodus zurückzukehren.x

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top