使用 Doctrine With laminas 项目问题:“类不存在”

问题描述 投票:0回答:2

我刚刚在我的 Laminas 项目中安装了 Doctrine。我添加了一个数据库连接并在应用程序文件夹(Application\Entity)中生成了我的实体。我将实体设置添加到 Application 文件夹中的 module.config.php 文件中。我创建了一个新用户,一切(包括路由)都工作正常。但是,当我尝试从表中获取所有数据进行查看时,屏幕显示错误:“Class 'Application\Entity\User' 不存在”。 我找不到任何解决方案 模块 |_应用 |_config |_实体 |_src |_视图 |_用户 |_config |_src |_查看

实体设置:命名空间:应用程序 module.config.php>

'doctrine' => [
        'driver' => [
            __NAMESPACE__ . '_driver' => [
                'class' => AnnotationDriver::class,
                'cache' => 'array',
                'paths' => [__DIR__ . '/../Entity']
            ],
            'orm_default' => [
                'drivers' => [
                    __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver'
                ],
            ],
        ],
    ],
````

**UserManager** 
```
namespace : User\Manager
```

```
public function listUsers()
    {
        $query = $this->entityManager->getRepository(User::class)->findAll();
        return $query;
   }
```

**UserController** 
```
namespace : User\Controller
```

```
public function listUserAction()
    {
        $data = $this->usermanager->listUsers();
        var_dump($data);
        die();
        $view = new ViewModel([
            'users' => $data
        ]);
        return $view;
    }
```


`Entity Folder => Path : Application\Entity`
zend-framework doctrine-orm doctrine zend-framework2 laminas
2个回答
0
投票

由于这个问题已经在 Laminas 论坛中得到了回答,我想我也应该在这里完成这个问题。

您的文件夹结构错误。存储实体的文件夹必须是应用程序 src 文件夹的子文件夹。

./module/Application/src/Entity/User.php

在 Laminas 项目中,所有业务逻辑都存储在 src 文件夹中。 Laminas 自动加载将尝试从那里接收所有类。


0
投票

我不回答你的问题!

Mais écris-moi,j'ai essayé de te contacter par mail à plusieurs reprises sans aucune réponse de ta part!!

Ne sois pas dur STP,我羡慕 de te voir / te parler..

© www.soinside.com 2019 - 2024. All rights reserved.