Doctrine没有映射自己生成的实体

时间:2013-11-24 18:53:09

标签: symfony orm doctrine mapping

我正在努力学习Doctrine。

我正在尝试使用上次生成的实体更新我的数据库。

我使用doctrine生成实体:generate:entity

这里是:

<?php

namespace NRtworks\ChartOfAccountsBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Lasttest
 *
 * @ORM\Table()
 * @ORM\Entity
 */

class Lasttest
{
/**
 * @var integer
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;

/**
 * @var string
 *
 * @ORM\Column(name="name", type="string", length=255)
 */
private $name;


/**
 * Get id
 *
 * @return integer 
 */
public function getId()
{
    return $this->id;
}

/**
 * Set name
 *
 * @param string $name
 * @return Lasttest
 */
public function setName($name)
{
    $this->name = $name;

    return $this;
}

/**
 * Get name
 *
 * @return string 
 */
public function getName()
{
    return $this->name;
}
}


?>

基本的东西,我没有改变任何东西。

然后我希望doctrine在我的sql数据库中生成表,但这里是答案:

doctrine:mapping:info - &gt;你没有任何映射实体

doctrine:schema:update - &gt;您没有要处理的元数据类

doctrine:generate:entities RandomnameBundle - &gt;不包含任何映射实体

任何提示?

3 个答案:

答案 0 :(得分:2)

尝试将doctrine orm映射从auto_mapping更改为manual。 示例如下所示:

doctrine:
    ...
    orm:
       ...
       auto_mapping: true

orm:
    entity_managers:
        default:
            mappings:
                NRtworks\ChartOfAccountsBundle: ~

答案 1 :(得分:0)

http://docs.doctrine-project.org/en/2.0.x/reference/annotations-reference.html#annref-table

@ORM \ Table需要表名。

  

必需属性:

     

name:表的名称

答案 2 :(得分:0)

我没有找到问题,但已经解决了

- &GT;我已将Symfony更新到其上一个版本