2013-01-16 50 views
0

我們從Symfony2和Doctrine開始。我需要從已經存在的表中選擇一些數據。這些表和列名稱不使用Doctrine定義的命名約定。Doctrine使用其他命名約定生成代碼

我想知道是否可以在某處創建我自己的命名方案。主要是,我們使用PascalCase表和列名,不加下劃線。這導致Entity屬性如$ firstpromotiondatetime,而列是FirstPromotionDateTime,所以我希望我的屬性爲firstPromotionDateTime。

回答

2

您不一定需要使用原則的實體生成器來生成新實體,您也可以手動執行它。但是,您也可以通過命令行生成實體,然後打開實體類並根據需要更改屬性名稱。只要確保教條映射(例如使用以下注釋)仍然指向數據庫中正確的列名。

/** 
* @var \DateTime $firstPromotionDateTime 
* 
* @ORM\Column(name="FirstPromotionDateTime", type="datetime") 
*/ 
private $firstPromotionDateTime; 

編輯:

如果您手動更改屬性名稱,也確保你已經正確地修改制定者&干將爲好。

+0

....並且記得從CLI啓動更新命令;-) – DonCallisto

+0

這不是我的問題。當然,我總是可以手動完成所有工作,但是我需要創建大量包含大量列的表格。所以從cli生成會很好,但我只想使用我們現有的命名約定來處理這些舊的數據庫設置。 – rolandow