Perché non può tornare alla modalità predefinita su Magento 2?
-
29-09-2020 - |
Domanda
Quindi sono passato alla modalità sviluppatore durante lo sviluppo di un progetto Magento 2 utilizzando il seguente comando:
php bin/magento deploy:mode:set developer
.
Tutto bene, ho ricevuto questo messaggio e ho sviluppato il sito web fine:
.Modalità applicazione corrente: sviluppatore.
Per alcuni dei motivi, volevo tornare alla modalità default
solo per verificare il comportamento del sito web in questa modalità. Nessuna ragione specifica per essere onesti, volevo solo tornare a questa modalità.
Quindi ho eseguito il seguente comando:
php bin/magento deploy:mode:set default
.
Ma ho ricevuto questo strano errore senza ulteriori spiegazioni:
Cannot switch into given mode "default"
.
Ho controllato il seguente file che gestisce le impostazioni della modalità Magento/Deploy/Console/Command/SetModeCommand.php
ed ecco cosa ho trovato:
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));
}
.
Quanto è strano, magento 2 viene spedito in modalità predefinita, ma non è possibile tornare a quella modalità specifica . Qual è la ragione dietro questo?
Modifica: per coloro che sono interessati a creare un problema su GitHub: https://github.com/magento/magento2 / problemi / 4292
Soluzione
La modalità predefinita non è né qui né lì.
Il team Magento vuole davvero che tu utilizzi sia la modalità di produzione sul tuo sito live o in modalità sviluppatore durante lo sviluppo.Il motivo per cui esiste la modalità predefinita è avere qualcosa che almeno funzioni ragionevolmente quando è implementato direttamente dal codice scaricato senza ulteriori interventi.
eseguendo php bin/magento deploy:mode:set
che hai identificato te stesso come capace e non ha bisogno della modalità predefinita.Poiché non c'è motivo che deve essere necessario tornare alla modalità predefinita Magento non ha fornito un modo per farlo.
Altri suggerimenti
La modalità predefinita è lì solo per installare magento 2.
Non dovrebbe essere usato per lo sviluppo o la produzione.
Dopo l'installazione è possibile passare da un DEV e al PROD.
Fonte: Alan Kent @ magentoimagine2016
Come sviluppatore di Windows, in modalità sviluppatore, Magento vuole creare collegamenti simbolici alle attività statiche, ma utilizza il comando Linux e non il comando Windows.Questo crea molti errori nei file JS e CSS.
Per tornare alla modalità predefinita, aprire: -
app/etc/env.php.
e cambia: -
'MAGE_MODE' => 'developer',.
Torna a: -
'MAGE_MODE' => 'default',.
e ri-distribuire nuovamente i file statici.
Ho corso con lo stesso problema, ma cambiarlo in env.php
funziona manualmente.