Когда запускать следующие команды в magento2?


Просто нужно четкое различие между этими командами.

  1. Когда запускать настройка magento: обновление и
  2. когда запускать настройка:di:компиляция ?

Также, когда весь кэш отключен, нужно ли нам по-прежнему очищать кэш и переиндексировать индексатор после любых изменений в модуле?

 8
Author: Teja Bhagavan Kollepara, 2017-11-29

4 answers

Когда выполнять команду setup:upgrade

Если вы включили один или несколько модулей, вам нужно будет запустить Magento setup:upgrade, чтобы обновить схему базы данных.

Или

Если вы напишете какую-то схему обновления, вам придется запустить команду Magento setup:upgrade

Когда нам нужно выполнить команду setup:di:compile?

Ответ довольно прост, эта команда выполняет следующую цель

  1. Генерация кода приложения (фабрики, прокси-серверы и т.Д на)

  2. Агрегирование конфигурации области (то есть оптимизированные конфигурации внедрения зависимостей для каждой области)

  3. Генерация перехватчиков (то есть оптимизированная генерация кода перехватчиков)

  4. Генерация кэша перехвата

  5. Генерация кода репозиториев (то есть сгенерированный код для API)

  6. Генерация атрибутов данных службы (то есть сгенерированные классы расширений для данных объекты)

Http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-compiler.html

Если ваш magento находится в режиме разработчика, вам не нужно запускать команду компиляции, просто нужно удалить папку var/di и generation (в magento 2.0.x и 2.1.x) или созданную папку в (Magento 2.2.x и выше)

 5
Author: Murtuza Zabuawala, 2018-07-13 05:36:10

Установка Bin/magento:обновление:: Используется только в том случае, если у вас есть какие-либо изменения в модуле, связанные со сценарием установки. После обновления необходимо запустить bin/magento setup:di:компиляция.

Настройка Bin/magento:di:компиляция::Если вы вносите какие-либо изменения, связанные с di.xml файлы или любой метод контроллера. В этом случае нет необходимости запускать обновление.

 5
Author: Ashish Jagnani, 2017-11-29 07:49:57

Настройка Magento:обновление примерно эквивалентно n98-magerun sys:настройка: запуск в magento 1 в том смысле, что он запускает ваши сценарии установки, но он делает что-то в дополнение к этому в magento 2 с 2.1, если я не ошибаюсь. Он активирует ваши вновь созданные модули. Это необходимо будет выполнить в режиме разработчика, а также в рабочем режиме и режиме по умолчанию. настройка:di:компиляция с другой стороны, генерирует ваши "автоматически созданные" классы, и их нужно будет запускать только в рабочем режиме так как это делается автоматически в режиме разработчика.

Также об индексировании , вам не нужно этого делать, если у вас не включены плоские таблицы и вы не внесли изменения в одну из сущностей, на которую влияют индексы, например, атрибуты продуктов, атрибуты категорий, продукты категорий и т. Д. Очистка кэша Теоретически не должна выполняться, если кэши отключены, но я делаю это все время, чтобы проверить работоспособность, имейте в виду, что обновление установки очищает кэши как хорошо.

Надеюсь, это ответ на ваш вопрос.

 1
Author: Vlad, 2017-11-29 07:59:39

Настройка: обновление После внесения изменений в файлы модулей необходимо выполнить команду установки: обновить

Настройка:di: компиляция После внесения изменений в настройки модуля/макета вам необходимо выполнить команду setup:di:compile

 0
Author: Naveed Asim, 2017-11-29 07:46:48