Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony 从生成的类加载实体_Symfony_Doctrine_Composer Php_Mapping_Auto Generate - Fatal编程技术网

Symfony 从生成的类加载实体

Symfony 从生成的类加载实体,symfony,doctrine,composer-php,mapping,auto-generate,Symfony,Doctrine,Composer Php,Mapping,Auto Generate,我有一个Symfony项目,其条令和实体位于src/Entity。另外,我还有一个脚本,它将一些更多的逻辑(方法)附加到这些类中。我试图按作曲家和条令加载生成的类,并排除起源。生成的类位于generated/{namespaceOfClasses}中,例如(generated/App/User/User.php) 作曲家 User.php类在供应商/composer/autoload_classmap.php中正确映射 教条 我不太熟悉条令配置,我尝试过一些配置 doctrine: orm:

我有一个Symfony项目,其条令和实体位于src/Entity。另外,我还有一个脚本,它将一些更多的逻辑(方法)附加到这些类中。我试图按作曲家和条令加载生成的类,并排除起源。生成的类位于generated/{namespaceOfClasses}中,例如(generated/App/User/User.php

作曲家 User.php类在供应商/composer/autoload_classmap.php中正确映射

教条 我不太熟悉条令配置,我尝试过一些配置

doctrine:
  orm:
    auto_generate_proxy_classes: '%kernel.debug%'
    naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
    auto_mapping: true
    mappings:
        App:
            type: annotation
            dir: '%kernel.project_dir%/src/Entity'
            prefix: 'App\Entity'
            alias: App
        App\Entity\User:
            type: annotation
            is_bundle: false
            dir: '%kernel.project_dir%/generated/App/Entity/User'
            prefix: 'App\Entity\User'
            alias: App
错误 当我想要生成条令代理时,它会失败,并显示以下消息:

Class "App\Entity\User\User" sub class of "App\Entity\AbstractEntity" is not a valid entity or mapped super class.
抽象实体是所有实体的父级

有人能帮我做条令配置吗

编辑
另一种方法(我不确定)是在composer为应用程序的公共运行生成代理和加载生成的实体时使用Originates。可能吗?

对不起,伙计们,现在我注意到生成的类中有错误的类注释(注释)。生成脚本复制类注释。有:

/**
 * @ORM\Entity(repositoryClass="App\Repository\User\UserRepository")
 * @ORM\Table(name="`user`")
 */
/**
 * Generated class. DO NOT EDIT !!!
 *
 */
而不是:

/**
 * Generated class. DO NOT EDIT !!!
 *
 * @ORM\Entity(repositoryClass="App\Repository\User\UserRepository")
 * @ORM\Table(name="`user`")
 */

你试过调试这个问题吗?这和作曲家有什么关系?
/**
 * Generated class. DO NOT EDIT !!!
 *
 * @ORM\Entity(repositoryClass="App\Repository\User\UserRepository")
 * @ORM\Table(name="`user`")
 */