Symfony2部署:得到MappingException:类“xxx”不是有效实体或映射超类

时间:2014-11-30 22:28:03

标签: php symfony doctrine-orm

我知道这个问题已经在这里被问了很多次,我在这里至少阅读了十个帖子......但我似乎不太明白该怎么做,所以我请求你的建议和考虑鉴于这是我的第一个symfony部署,实际上是我的第一个站点部署。非常感谢此事。

这是我的路线图

1-我已经建立了一个在localhost上运行良好的站点。它非常简单,它使用通过.yml文件创建的实体并生成实体命令的学说。我还使用了generate crud来修改那些实体,因此我自己的代码很少。

2-我将所有项目文件复制到ftp服务器中,据我所知,该网站是在线的,因为我可以访问config.php例如

3-我在服务器上创建了一个数据库,通过sql创建了表(通过doctrine:schema:craeate --dump-sql转储),创建了一个拥有所有权限的用户。

4-我更新了parameters.yml文件以反映新的数据库信息

3-每当我尝试运行应用程序时,我都会收到无效实体或映射超类的错误。

附加说明:

为了解决这个问题,我已经完成了这三件事,但我一直都有同样的错误

1:在服务器上的“使用”行下的app.php文件中复制了这两行。

ini_set('eaccelerator.enable', 0);
ini_set('eaccelerator.optimizer', 0);

这是为了尝试禁用eaccelerator ...但实际上我不知道这是否在服务器上运行困难。

2:修改/ mysite / vendor / doctrine / orm / lib / Doctrine / ORM / Tools

下的setup.php文件
    public static function createAnnotationMetadataConfiguration(array $paths, $isDevMode = false, $proxyDir = null, Cache $cache = null, $useSimpleAnnotationReader = true)
    {
       $config = self::createConfiguration($isDevMode, $proxyDir, $cache);
       $config->setMetadataDriverImpl($config->newDefaultAnnotationDriver($paths, false));

       return $config;
   }

这是因为我已经读过其他答案,第二个参数的设置错误将有助于解决它...但事实是我不知道这是否是正确的地方。

3:我检查了该行的主config.yml文件,它已经存在:

doctrine:
    orm:
        auto_mapping: true

最后,如果指出可能很重要,那么当我运行config.php时,我会遇到这两个市长的问题:

  

已发现主要问题,必须先解决,然后才能继续:

     

在php.ini *中将detect_unicode设置为off。

     

将“phar”添加到php.ini *中的suhosin.executor.include.whitelist。

如果有人可以查看并帮助我解决这个问题,我将非常感谢。我真的指望着你,因为我没有其他问题。我的手指交叉。

0 个答案:

没有答案