Кто-нибудь может объяснить, пожалуйста, как работает команда all magento в magento2 (я хочу разобрать внутренний процесс)?
Кто-нибудь может объяснить, как работает команда all magento в magento2 (я хочу понять внутренний процесс)
Например:
ЕСЛИ я выполняю команду модуль php bin/magento: статус какой файл повлияет и как он будет отображаться?
Я хочу знать обо всех командах, которые мы в основном используем в командной строке.
2 answers
ObjectManagerProvider.php является отправной точкой инициализации всех команд с помощью запуска приложения
Setup/src/Magento/Setup/Model/ObjectManagerProvider.php
Здесь createCliCommands()
функция создает команды командной строки и инициализирует их с помощью экземпляра приложения
createCliCommands()
функция получает список экземпляров команд из функции getCommands()
, которая возвращает все классы команд
Вы можете проверить все классы команд из getCommandsClasses()
Setup/src/Magento/Setup/Console/CommandList.php
Вот список всех классов команд
\Magento\Setup\Console\Command\AdminUserCreateCommand::class,
\Magento\Setup\Console\Command\BackupCommand::class,
\Magento\Setup\Console\Command\ConfigSetCommand::class,
\Magento\Setup\Console\Command\CronRunCommand::class,
\Magento\Setup\Console\Command\DbDataUpgradeCommand::class,
\Magento\Setup\Console\Command\DbSchemaUpgradeCommand::class,
\Magento\Setup\Console\Command\DbStatusCommand::class,
\Magento\Setup\Console\Command\DependenciesShowFrameworkCommand::class,
\Magento\Setup\Console\Command\DependenciesShowModulesCircularCommand::class,
\Magento\Setup\Console\Command\DependenciesShowModulesCommand::class,
\Magento\Setup\Console\Command\DiCompileCommand::class,
\Magento\Setup\Console\Command\GenerateFixturesCommand::class,
\Magento\Setup\Console\Command\I18nCollectPhrasesCommand::class,
\Magento\Setup\Console\Command\I18nPackCommand::class,
\Magento\Setup\Console\Command\InfoAdminUriCommand::class,
\Magento\Setup\Console\Command\InfoBackupsListCommand::class,
\Magento\Setup\Console\Command\InfoCurrencyListCommand::class,
\Magento\Setup\Console\Command\InfoLanguageListCommand::class,
\Magento\Setup\Console\Command\InfoTimezoneListCommand::class,
\Magento\Setup\Console\Command\InstallCommand::class,
\Magento\Setup\Console\Command\InstallStoreConfigurationCommand::class,
\Magento\Setup\Console\Command\ModuleEnableCommand::class,
\Magento\Setup\Console\Command\ModuleDisableCommand::class,
\Magento\Setup\Console\Command\ModuleStatusCommand::class,
\Magento\Setup\Console\Command\ModuleUninstallCommand::class,
\Magento\Setup\Console\Command\MaintenanceAllowIpsCommand::class,
\Magento\Setup\Console\Command\MaintenanceDisableCommand::class,
\Magento\Setup\Console\Command\MaintenanceEnableCommand::class,
\Magento\Setup\Console\Command\MaintenanceStatusCommand::class,
\Magento\Setup\Console\Command\RollbackCommand::class,
\Magento\Setup\Console\Command\UpgradeCommand::class,
\Magento\Setup\Console\Command\UninstallCommand::class,
\Magento\Setup\Console\Command\DeployStaticContentCommand::class
Команда module:status
была объявлена ModuleStatusCommand.php
Setup/src/Magento/Setup/Console/Command/ModuleStatusCommand.php
protected function execute(InputInterface $input, OutputInterface $output)
{
$moduleList = $this->objectManagerProvider->get()->create(\Magento\Framework\Module\ModuleList::class);
$output->writeln('<info>List of enabled modules:</info>');
$enabledModules = $moduleList->getNames();
if (count($enabledModules) === 0) {
$output->writeln('None');
} else {
$output->writeln(join("\n", $enabledModules));
}
$output->writeln('');
$fullModuleList = $this->objectManagerProvider->get()->create(\Magento\Framework\Module\FullModuleList::class);
$output->writeln("<info>List of disabled modules:</info>");
$disabledModules = array_diff($fullModuleList->getNames(), $enabledModules);
if (count($disabledModules) === 0) {
$output->writeln('None');
} else {
$output->writeln(join("\n", $disabledModules));
}
}
Команда "модуль: статус" была объявлена в
Setup/src/Magento/Setup/Console/Command/ModuleStatusCommand.php
Используйте команду grep, чтобы узнать, в каком модуле объявлена консольная команда:
Модуль Grep-r: поставщик статуса/magento/
И затем в этом случае он находится в настройке magento2-base, которая будет помещена в папку установки во время установки.