Вопрос

Поэтому я переключился в режим разработчика при разработке проекта Magento 2, используя следующую команду:

php bin/magento deploy:mode:set developer

Все хорошо, я получил это сообщение и отлично разработал веб-сайт:

Текущий режим приложения:разработчик.

По каким-то причинам мне захотелось вернуться в default режим только для проверки поведения веб-сайта в этом режиме.Никаких особых причин, если честно, просто хотелось переключиться обратно в этот режим.

Поэтому я выполнил следующую команду:

php bin/magento deploy:mode:set default

Но я получил эту странную ошибку без дальнейших объяснений:

Cannot switch into given mode "default"

Я проверил следующий файл, который обрабатывает настройки режима Magento/Deploy/Console/Command/SetModeCommand.php и вот что я нашел:

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));
}

Как это странно, Magento 2 поставляется в режиме по умолчанию, но вы не можете вернуться в этот конкретный режим..В чем причина этого?

Редактировать:для тех, кто заинтересован, я создал проблему на github: https://github.com/magento/magento2/issues/4292

Это было полезно?

Решение

Режим по умолчанию — ни здесь, ни там.

mode overview

Команда Magento действительно хочет, чтобы вы использовали либо производственный режим на своем действующем сайте, либо режим разработчика во время разработки.Причина, по которой существует режим по умолчанию, заключается в том, чтобы иметь что-то, что, по крайней мере, могло бы работать разумно при развертывании непосредственно из загруженного кода без дальнейшего вмешательства.

Запустив php bin/magento deploy:mode:set вы определили себя как способный и не нуждающийся в режиме по умолчанию.Поскольку нет причин возвращаться в режим по умолчанию, Magento не предоставил вам возможности сделать это.

Другие советы

Режим по умолчанию предназначен только для установки Magento 2.
Его не следует использовать для разработки или производства.
После установки переключаться можно только между dev и prod.

Источник:Алан Кент @MagentoImagine2016

Как разработчик Windows, в режиме разработчика Magento хочет создавать символические ссылки на статические ресурсы, но использует команду Linux, а не команду Windows.Это создает множество ошибок в файлах js и css.

Чтобы вернуться в режим по умолчанию, откройте: -

app/etc/env.php

И изменить:-

'MAGE_MODE' => 'developer',

Вернуться к:-

'MAGE_MODE' => 'default',

И снова разверните статические файлы.

Я столкнулся с той же проблемой, но изменил ее в env.php вручную работает.

**set mode 2.3.x**

Теперь Magento позволяет нам вернуться в режим по умолчанию с версии 2.3.x.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top