Symfony make:某些现有实体的实体失败
我喜欢使用Symfony make:某些现有实体的实体失败,symfony,doctrine-orm,entity,Symfony,Doctrine Orm,Entity,我喜欢使用make:entity MyEntity来编辑实体(添加字段、getter、setter)。通常,它会给出以下输出: $ sym make:entity MyEntity Your entity already exists! So let's add some new fields! 但是,对于某些实体,这将导致 $ sym make:entity SomeOtherEntity [ERROR] The file "src/Repository/SomeOtherEntity.ph
make:entity MyEntity
来编辑实体(添加字段、getter、setter)。通常,它会给出以下输出:
$ sym make:entity MyEntity
Your entity already exists! So let's add some new fields!
但是,对于某些实体,这将导致
$ sym make:entity SomeOtherEntity
[ERROR] The file "src/Repository/SomeOtherEntity.php" can't be generated because it already exists.
实体之间的区别在于其位置:
MyEntity
位于src/Entity中
SomeOtherEntity
位于src/Domain/Model中
但是,正如我添加的,这些实体都包含在配置中
Model:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Domain/Model'
prefix: 'App\Domain\Model'
alias: Model
App:
is_bundle: false
type: annotation
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
例如,迁移可以很好地处理此问题。只是make:entity
失败了。
问题是,我是否可以将make:entity
用于未在默认位置定位的实体
任何提示都将适用。是的,您可以
为了使用命令make:entity
在不同的命名空间中创建全新的实体,您可以使用命令:
php-bin/console-make:entity\\App\\Domain\\Model\\SomeOtherEntity
如果对现有实体使用make:entity,则应在命令中添加标志--regenate
因此,用于为现有实体重新生成getter和setter的命令看起来有点不同:
php-bin/console-make:entity——重新生成App\\Domain\\Model\\SomeOtherEntity
谢谢!默认位置(src/实体)硬编码在哪里?我们不能改变吗?因为很快我将把我所有的实体移动到src/Domain/model对我来说,这是一个反斜杠!如有必要,请尝试并编辑您的答案。使用双斜杠时抛出错误作为PHP类名无效(它必须以字母或下划线开头,后跟任意数量的字母、数字或下划线)