0

我实际上已经使用 Symfony2 完成了一个项目,但是我的老板希望我更改数据库中表的名称。他想在我的表格名称中加上下划线,这意味着在类名中加上下划线。

我试图这样做,但它不起作用。当我这样做时,我收到一条错误消息: "The entity "entity" cannot be found in "another entity""

我还尝试重命名不带下划线的类名,看看我是否做错了,但不,这是有效的。

我在网上搜索,也许可以解释这个问题的原因,这里是:

https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md#underscores-in-namespaces-and-class-names

所以有人可以确切地告诉我如何用 symfony 在我的表名中添加下划线?

4

2 回答 2

1

根据文档,您可以将表名与类名分开。

只需这样做:

<?php
/**
 * @Entity
 * @Table(name="my_table_name")
 */
class MyPersistentClass
{
    //...
}

就这样 :)

我必须补充一点,如果您使用命令重新生成数据模型,app/console doctrine:schema:update --force您将不会破坏现有的表和数据。然后,您必须手动将数据从旧表迁移到新表。

于 2013-07-16T09:21:49.287 回答
1

也许有更好的解决方案:使用下划线命名策略。

https://stackoverflow.com/a/12702949/244058

于 2013-07-16T10:24:42.667 回答