我想知道symfony2控制台命令cache:clear
和cache:warmup
如何处理有关教条实体的更改。
我已阅读此http://blog.whiteoctober.co.uk/2014/02/25/symfony2-cache-warmup-explained/和此https://stackoverflow.com/a/17787070/779320。据说symfony2预热会生成Doctrine代理。
事实上,我经常在使用capifony进行应用程序部署后出现这种情况,我必须运行doctrine迁移。之后,我始终运行cache:clear
和cache:warmup
。
根据上面的链接(如果我理解正确),如果有任何实体添加/删除,我应该运行cache:warmup
。但是如果只有实体的字段发生了变化呢?我应该运行必要的cache:clear
和cache:warmup
命令才能运行吗?或者,哪一个是必要的?或者,根本不是吗?
答案 0 :(得分:1)
迁移仅负责持久层。它与EntityProxies无关,它只会使Database
与Model
同步 - 这就是全部。
在生产中,在部署期间,您可能会运行git pull
和composer install
,这会清除缓存,因此迁移会在此之后运行。
原因 - composer install
新代码和模型本身准备好使用新字段/实体后,但数据库仍然落后,因此迁移会使其保持同步。