所以我似乎困擾於隻影響Symfony而不是開發模式的生產模式的問題。這一次,我有一個ManyToOne關聯,我試圖只抓取那些沒有關聯的實體(即它們在數據庫中有一個NULL值)。這與我在開發移動時所期望的完全一樣,但在prod模式下,Doctrine會拋出一個「無法識別的字段」異常......對於絕對存在的字段。學說2.5:無法識別的領域(但只在Symfony的產品模式)
這裏的實體問題的相關部分(page.php文件):
/**
* @ORM\ManyToOne(targetEntity="Project", inversedBy="pages")
* @ORM\JoinColumn(name="project_id", referencedColumnName="ID")
*/
protected $project;
這裏是從控制器相關行(PageController.php):
$pages = $this->getDoctrine()->getRepository('JCScopingBundle:Page')->findBy(['project' => null]);
同樣,這完美地使用app_dev.php(即開發模式),但使用app.php(即產品模式),我不斷收到「無法識別的領域」的例外。是什麼賦予了?
更新:我向同一個實體添加了「權重」整數字段,並且該字段在prod
模式下也不能識別。這意味着我不能使用prod
模式,這意味着我無法將更改上傳到遠程服務器。真的在這裏泡菜...
如果在'dev'環境中有效,而不是'prod',它會被大部分時間緩存。你有緩存:清除--env = prod --no-debug'? – ccKep
說實話,在我的本地機器上,通過GUI文件系統刪除'prod'緩存文件夾通常更容易,然後重新加載頁面。我不止一次地完成了這一步,並得到了同樣的結果。上次我只有一個「prod」問題,這是Symfony中的一個錯誤,最終由官方補丁修復。 – willherzog
我只是嘗試命令行方法,並得到了相同的結果。 – willherzog