我是Symfony/Doctrine的新手。我根据我创建的表创建了一个实体"商家"。它工作得很好。
现在我已经创建了一个实体"提供程序",并希望为其生成表。
我使用了 doctrine:mapping:import,它只导入商人。提供程序无处可寻。
谢谢!
编辑:我尝试使用"shema:update",但它返回"没有什么可更新的 - 您的数据库已经同步"。
确保你的"提供者"类"name"或"namespace"是正确的,也不要忘记使用
use DoctrineORMMapping as ORM;
如果您的实体类采用注释格式..有时可能是它的文件名是"提供"而不是"提供者.php",并且可能是类名不符合其命名空间,或者您忘记使用命名空间..
如果您尝试基于实体创建数据库架构,则应使用不同的命令。
以下一个将删除并创建架构(请注意,这将删除所有数据库数据):
app/console doctrine:schema:drop --force
app/console doctrine:schema:create
或者,您可以只更新现有架构:
app/console doctrine:schema:update --force
除了上述命令之外,您还可以查看原则将应用于数据库的sql更改,而无需应用它们:
app/console doctrine:schema:update --dump-sql
确保数据库配置文件的数据库名称与实体的架构名称匹配。
如果它们不匹配,则不会注意任何差异,不会创建任何 SQL
我遇到了同样的问题。控制台重启对我有用。