无法在Doctrine 2中更改名称策略

时间:2015-07-11 19:56:27

标签: php symfony doctrine-orm zend-framework2

我正在使用Zend Framework 2.4.3和Doctrine 0.9(对于ZF2)。我的实体名称在CamelCase中,而我的表名都是小写的。它导致mysql错误

  

“SQLSTATE [42S02]:未找到基表或视图:1146表'mydb.Campaign'不存在”

当然我可以将我的实体重命名为小写但我的问题是 为什么表注释不起作用我已将我的实体定义为

/**
 * ORM\Table(name="campaign")
**/
class Campaign
{
    //fields are here
}

我创建了一个custom NamingStrategy来小写表名,但是Doctrine却没有使用NamingStrategy。我这样说是因为我更改了DefaultNamingStrategy的代码以更改表名称案例,但结果表格名称始终为Campaign而不是“广告系列”。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

如果此代码是您用于yout实体的代码,那么thera在@之前缺少ORM

/**
 * @ORM\Entity
 * @ORM\Table(name="campaign")
 */
class Campaign