小编art*_*.00的帖子

如何在用户定义的symfony Bundle中配置Doctrine Entity Annotation自动加载?

当我尝试验证我的symfony架构时,我收到错误:

[Doctrine\Common\Annotations\AnnotationException]                            
[Semantical Error] The annotation "@Doctrine\Orm\Mapping\Entity" in class C  
hill\EmailUser\Entity\EmailUser does not exist, or could not be auto-loaded 
Run Code Online (Sandbox Code Playgroud)

我在这个问题中看到:导入注释的麻烦,据说我们需要改变Doctrine Simple Annotation Reader.尽管在自动加载器中进行bundle配置似乎很奇怪,但我尝试通过app/autoloader.php来做到这一点:

use Doctrine\ORM\Configuration;

path = __DIR__."/../vendor/path/to/annotationDriver.php"
Configuration::newDefaultAnnotationDriver(path, false);
Run Code Online (Sandbox Code Playgroud)

我也尝试过研究,看看我是否能找到像这样的参数:

doctrine.orm.mappings.annotations.simple_annotations_reader
Run Code Online (Sandbox Code Playgroud)

我可以设置为假,但我找不到任何东西.

正如您将在下面看到的,我还尝试将我的bundle的映射添加到config.yml中的ORM设置.

composer.json:

{
    "name": "root/photoproject",
"license": "proprietary",
"type": "project",
"autoload": {
    "psr-4": {
        "": "src/"
    },
    "classmap": [
        "app/AppKernel.php",
        "app/AppCache.php"
    ]
},
"autoload-dev": {
    "files": [
        "vendor/symfony/symfony/src/Symfony/Component/VarDumper/Resources/functions/dump.php"
    ]
},
"require": {
    "php": ">=5.3.9",
    "doctrine/annotations": "^1.4",
    "doctrine/doctrine-bundle": "~1.4",
    "doctrine/migrations": "^1.5",
    "doctrine/orm": "^2.5",
    "incenteev/composer-parameter-handler": "~2.0",
    "sensio/distribution-bundle": "~4.0", …
Run Code Online (Sandbox Code Playgroud)

php doctrine symfony

3
推荐指数
1
解决办法
3116
查看次数

标签 统计

doctrine ×1

php ×1

symfony ×1