【问题标题】:Doctrine not seeing changes to certain fields within entity for prod env but does on dev envDoctrine 没有看到 prod env 实体中某些字段的更改,但在 dev env 上确实如此
【发布时间】:2019-08-19 05:05:33
【问题描述】:

我正在运行奏鸣曲管理员,并且我有一个现有的工作实体/管理员。我已经向教义 orm、实体、管理员添加了另外 2 列,并运行了 app/console 教义:schema:update 命令以成功将字段导入数据库。

在本地开发环境中,这很好用。

在生产中,新字段不会保存。

如果我在 preUpdate 或 postUpdate 中手动调用 $this->isMyNewField() 在奏鸣曲管理员中保存实体时,我会根据我是否选中该框得到正确的结果为真或假。

然而,学说似乎根本没有正确注册该字段,我已经记录了它在更新和持久化时运行的 sql,它甚至没有尝试对任何一个字段做任何事情。

如果我将 AppKernel 更改为在“dev”而不是“prod”(在生产环境中)上运行,那么一切都会按预期运行,并且学说可以毫无问题地使用它。

我尝试过清除原则元数据、清除缓存、重新启动服务器、更改字段类型、删除原则并重新添加(通过实体 orm xml 文件)

仍然没有运气。我可以尝试其他任何想法吗?

谢谢

凯文

【问题讨论】:

  • 清除缓存或尝试清除元数据
  • 我之前尝试过,但它是正确的,我错过了 env 参数????

标签: symfony doctrine sonata


【解决方案1】:

大家好,原来是命令

app/console doctrine:cache:clear-metadata 

这需要运行,我尝试过但没有成功,所以我错过了它是环境,所以命令是

app/console doctrine:cache:clear-metadata --env=prod

后来还好,很郁闷

【讨论】:

    猜你喜欢
    • 2013-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多