Как изменить местоположение по умолчанию созданных объектов? (php bin / console make: entity) - PullRequest
0 голосов
/ 18 июня 2019

Я хочу изменить расположение сущностей по умолчанию в Symfony4: когда я запускаю команду php bin/console make:entity, она автоматически создает новый файл в пространстве имен App \ Entity . Я хочу создать его в другом пространстве имен, например App \ Appli \ Entity .

Я уже пытался изменить следующие файлы без изменений.

  • doctrine.yaml
  • EntityGenerator.php

Я также бросил взгляд на make:entity --help, но не похоже, что мы можем установить какой-либо путь.

В doctrine.yaml я добавил этот код:

mappings:
   Appli:
        is_bundle: false
        type: annotation
        dir: '%kernel.project_dir%/src/Appli'
        prefix: 'App\Appli\Entity'
        alias: Appli        

Я хочу создать новый объект в папке src / Appli / Entity с помощью командной строки php bin/console make:entity, но он всегда создавал его в папке src / Entity ! !

Ответы [ 3 ]

1 голос
/ 18 июня 2019

Из официальной документации

Настройка корневого пространства имен

# config/packages/dev/maker.yaml
maker:
    root_namespace: 'App\Appli\Entity'
0 голосов
/ 21 июня 2019

Это возможно без перенастройки, но с немного другой структурой, такой как App\Entity\Appli и App\Entity\Dev, указав подкаталог в командной строке для имени класса.

$ php bin/console make:entity 

Class name of the entity to create or update (e.g. BravePizza):
> Appli\Thing

created: src/Entity/Appli/Thing.php
created: src/Repository/Appli/ThingRepository.php

Указанный выше объектсоздается с помощью namespace App\Entity\Appli;

$ php bin/console make:entity

Class name of the entity to create or update (e.g. TinyChef):
> Dev\Thing

created: src/Entity/Dev/Thing.php
created: src/Repository/Dev/ThingRepository.php

Приведенный выше объект создается с помощью namespace App\Entity\Dev;

0 голосов
/ 18 июня 2019

Спасибо за ваш ответ, это сработало!

На самом деле у меня есть две папки, в которых я хочу создать сущности: Appli и Dev

src
  |- Appli
     |- Entity
       ....
  |- Dev
     |- Entity
       ....

Так что мне нужно изменить maker.yaml , когда я хочу добавить сущность в Appli или в Dev, или есть какой-нибудь другой метод?

...