簡體   English   中英

使用Symfony2和Doctrine導入數據庫

[英]Importing Database Using Symfony2 and Doctrine

我正在嘗試使用命令

doctrine:mapping:import

要將數據庫導入到我的項目中,但是我不希望database.orm.yml文件位於Bundle中,我希望orm和Entity文件位於src文件夾中的Static目錄中。 上面的命令要求我提供捆綁名稱。 我的問題是, 如何將映射文件導入到./src/Entity/orm文件夾而不是Bundle中? 這有可能嗎?

./src/Entity/orm        <-- Directory having the .yml files
./src/Entity/Repository <-- The repository classes
./src/Entity            <-- The Entity Classes here

我將用發現的工作來回答自己的問題。

以下命令將從數據庫生成實體到指定文件,並將名稱空間添加到類中;

php app/console doctrine:mapping:convert annotation ./src/Entity --from-database --force --namespace="Entity\\";

對於完整的答案,我可以使用:

php app/console doctrine:mapping:convert annotation ./src/Entity --from-database --force --namespace="Entity\\";

生成yaml orm文件。 然后手動將名稱空間添加到每個名稱空間,然后運行:

php app/console doctrine:generate:entities ./src/Entity/orm

正確設置Symfony2 config.yml參數后。 但是,這將是一種浪費的工作,因為我可以輕松地使用注釋。

我從這次經驗中學到的是,如果您使用的是代碼優先的開發策略,則使用yaml orm文件並生成實體是一個不錯的功能。 如果您只是想像我這樣從設計不佳或過大的數據庫中生成實體框架,則使用注釋可以避免麻煩。

現在我在做什么,因為您無法從數據庫中指定repositoryClasses。 在我開發時只是添加存儲庫類。 並非200多個表中的每個表都需要一個存儲庫類。

注意:該數據庫並非“內部”設計的,並且普遍的共識是它很糟糕並且需要重新設計,但是當前的時間限制不允許我們這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM