清除学说的映射缓存

时间:2015-08-21 11:47:31

标签: symfony doctrine-orm

在定义我的模型(yml)时,我错误地使用了mysql保留关键字'condition'。然后,我将该字段重命名为“description”并生成实体,但无法运行命令php app/console doctrine:schema:update,因为生成的查询ALTER TABLE segment_filters CHANGE condition description VARCHAR(300) NOT NULL包含关键字。

我尝试了以下内容:

  • 直接在数据库上重命名字段(desparation)
  • 清除缓存php app/console cache:clear
  • 清除各种学说缓存doctrine:cache:clear-* -flush(有和没有刷新)

我曾尝试使用谷歌搜索和阅读,但也许这是那些头脑只需要休息的日子之一。任何帮助都将受到高度赞赏

1 个答案:

答案 0 :(得分:1)

我以前遇到过类似的问题。这与mysql语法有关。 Symfony2逆向工程将帮助您解决此问题

  1. 直接在数据库表上更改列名称。
  2. 运行php app / console doctrine:mapping:import --force Bundlename format(yml / xml / php)。
  3. 这将使用数据库

    映射该捆绑包的学说yml
    1. run doctrine:generate:该捆绑包上的实体。
    2. 任务完成。