Собственная команда для загрузки фикстур-данных

Существует команда doctrine:fixture:load, которая загружает в мой database определенные поддельные данные (ранее созданный прибор class).

Я хочу создать свой own command (Консольные команды), который будет загружать только классы выбранный с поддельными данными. В документации все ясно, но я до сих пор не могу понять, какая должна быть логика, которая бы скачивала выбранные фальшивые данные.

protected function configure()
{
    $this
        // command name
        ->setName('app:download:fixture');
}


protected function execute(InputInterface $input, OutputInterface $output)
{
    $output->write('There must be logic, but I do not have the faintest idea what it should be');
}

Я не прошу выполнять эту работу за меня, но прошу поделиться информацией по этой теме или советом.

Спасибо !

В чем вы не уверены? Писать команды для Symfony или писать собственные фикстуры?

Bananaapple 01.06.2018 15:07

Не очень понятно, что вы пытаетесь сделать. Вы хотите загрузить только некоторые приборы? Каков ввод и что вы ожидаете получить на выходе.

Tomsgu 01.06.2018 15:08

@Bananaapple У меня уже есть классы приспособлений, которые отлично работают. Но я хочу загрузить эти данные отдельной командой. Итак, я бы создал команду для загрузки одной части моих приборов, а вторая команда загрузила бы остальные. Я понятия не имею, как я могу этого добиться

kxko 01.06.2018 15:10

Что ж, если вы сделаете свои приборы доступными в качестве службы, вы можете вызывать их где угодно, в том числе изнутри команды ...

Bananaapple 01.06.2018 17:00

@Bananaapple, как сделать прибор доступным в качестве услуги? Не могли бы вы показать мне несколько примеров?

kxko 02.06.2018 16:18
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
5
63
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это то, что вы ищете: Как вызывать команды в команде.

К сожалению, в новой версии doctrine fixtures это невозможно указывает, какие фикстуры загружать. Раньше вы могли это сделать: bin/console doctrine:fixtures:load --fixtures=path/to/fixture.

Здесь есть несколько вариантов:

  1. Используйте старую версию фикстур доктрины с параметром --fixtures.
  2. Можно сделать пиар или подождать пока кто-то не сделает это.
  3. Закрепляет команду ищет все услуги с тегом doctrine.fixture.orm. Вы можете играть с проходами компилятора динамически загружайте их в зависимости от ваших потребностей. Не знаю, как это сделать технически.

  4. Сделайте команду, которая загружает ваши данные вручную.

Сэр, у вас есть пример, как я могу загрузить свои данные вручную?

kxko 01.06.2018 17:05

Ну похоже на класс приспособления. 1. вы должны использовать вводить EntityManager для вашей команды 2. продолжайте так же, как здесь

Tomsgu 01.06.2018 17:12

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