使用Symfony2生成实体时出错

时间:2014-09-02 12:05:49

标签: php symfony doctrine-orm

我正在从php Class生成一个实体:

<?php
// src/Printing/Productesbundle/Entity/User.php
namespace Printing\ProductesBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="UsersStamp")
 */
class UserStamp
{
    /**
     * @ORM\Column(type="integer") 
     * @ORM\Id 
     * @ORM\GeneratedValue
     */
    private $id;

}

?>

执行时

php app/console doctrine:generate:entities Printing/ProductesBundle/Entity/UserStamp

它返回以下错误

 [Doctrine\ORM\Mapping\MappingException]
  Class "Printing\ProductesBundle\Entity\UserStamp" is not a valid entity or mapped super class.

我错过了什么?

谢谢!

PS:

这是我的学说配置:

# Doctrine Configuration
doctrine:
    dbal:
        driver:   "%database_driver%"
        host:     "%database_host%"
        port:     "%database_port%"
        dbname:   "%database_name%"
        user:     "%database_user%"
        password: "%database_password%"
        charset:  UTF8
        # if using pdo_sqlite as your database driver, add the path in parameters.yml
        # e.g. database_path: "%kernel.root_dir%/data/data.db3"
        # path:     "%database_path%"

    orm:
        auto_generate_proxy_classes: "%kernel.debug%"
        auto_mapping: true

3 个答案:

答案 0 :(得分:2)

你可以试试下面的命令吗?

app/console doctrine:generate:entities PrintingProductesBundle:UserStamp

答案 1 :(得分:0)

尝试了一些技巧后,我找到了解决方案。

我想这个错误引发了我之前从数据库生成实体的事实(逆向工程)。

要解决此问题,您必须删除config / doctrine文件夹的内容。

感谢@Javad继续努力!

答案 2 :(得分:0)

我认为你需要执行类似这样的事情

  

php app / console doctrine:generate:entities ProductesBundle