2016-06-13 80 views
1

是否有可能把你的實體模型在不同的地方比在Symfony3包/文件?Symfony3 /學說MongoDB的ODM:其他文件夾不是包/文件?

我不得不在捆綁的實體模型/文檔/ Product.php,它是工作的罰款。然後,我將該位置更改爲「捆綁/實體/產品」,並更新了FQCN以反映該位置。

不過,我現在得到的錯誤:

[Doctrine\Common\Persistence\Mapping\MappingException] 
Class 'Acme\StoreBundle\Document\Product' does not exist 

即使有到FQCN在項目的任何地方沒有任何引用。這是否意味着無法使用其他文件夾,或者我是否缺少一些配置?

+0

如果*有*它'的Acme \ StoreBundle \文檔\ Product'和移動,然後'的Acme \ StoreBundle \文檔\ Product'做不再存在 - 是不是預期?你需要提供更多的上下文。在你的代碼中,*異常最終來自哪裏? – Lumen

+0

就像我說過的,我更新了FQCN以反映每個地方的新位置/名稱空間。項目中的任何地方都沒有提及舊的FQCN。這就像malarzm所說的那樣是因爲自動映射設置。 – shokora

回答

2

如果您要將文檔移動到非標準文件夾,您需要讓Doctrine在捆綁配置中瞭解此信息,您可以參考the docs以獲取更多信息。

而且,這裏是我的配置的一部分以供參考:

document_managers: 
    default: 
     mappings: 
      Core: 
       type: annotation 
       dir: "%kernel.root_dir%/../lib/Application/Core/Model" 
       prefix: CompanyManager\Application\Core\Model 
+0

很不錯,我很難在文檔中找到這個:) – shokora

相關問題