Así que cambié al modo desarrollador mientras desarrollaba en un proyecto Magento 2 usando el siguiente comando:
php bin/magento deploy:mode:set developer
Todo bien, recibí este mensaje y desarrollé bien el sitio web:
Modo de aplicación actual: desarrollador.
Por algunas razones, quería volver al default
modo solo para verificar el comportamiento del sitio web en este modo. No hay razones específicas para ser honesto, solo quería volver a este modo.
Entonces ejecuté el siguiente comando:
php bin/magento deploy:mode:set default
Pero obtuve este extraño error sin más explicaciones:
Cannot switch into given mode "default"
Revisé el siguiente archivo que maneja la configuración del modo Magento/Deploy/Console/Command/SetModeCommand.php
y esto es lo que he encontrado:
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));
}
Qué extraño es eso, Magento 2 se envía en modo predeterminado, pero no puede volver a ese modo específico . ¿Cuál es la razón detrás de esto?
Editar: para aquellos interesados, terminé creando un problema en github: https://github.com/magento/magento2/issues/4292
fuente
Respuestas:
El modo predeterminado no es ni aquí ni allá.
El equipo de Magento realmente quiere que uses el modo de producción en tu sitio en vivo o el modo de desarrollador durante el desarrollo. La razón por la que existe el Modo predeterminado es tener algo que al menos se ejecute razonablemente cuando se implementa directamente desde el código descargado sin más intervención.
Al ejecutarlo,
php bin/magento deploy:mode:set
se ha identificado como capaz y no necesita el modo predeterminado. Como no hay ninguna razón para volver al modo predeterminado, Magento no le proporcionó una forma de hacerlo.fuente
El modo predeterminado es solo para instalar Magento 2.
No debe usarse para desarrollo o producción.
Después de la instalación, solo puede cambiar entre dev y prod.
Fuente: Alan Kent @ MagentoImagine2016
fuente
Como desarrollador de Windows, en modo desarrollador, Magento quiere crear enlaces simbólicos a los activos estáticos, pero usa el comando Linux y no el comando de Windows. Esto crea muchos errores en los archivos js y css.
Para volver al modo predeterminado, abra: -
Y cambio:-
De regreso:-
Y vuelva a implementar archivos estáticos nuevamente.
fuente
Corrí con el mismo problema, pero cambiarlo
env.php
manualmente funciona.fuente
Ahora Magento nos permite volver al modo predeterminado desde 2.3.x
fuente