2017-11-04 30 views
0

View我的意思是:最簡單的方法來獲取查詢對象的數組中的symfony

create view `vMaketType` as select * from MaketType 

我有一個view數據庫,但由於教條的,現在不能支持它,使用查詢我,並一個接一個地取出它:

 $em = $this->getDoctrine()->getManager(); 
     $con = $this->getDoctrine()->getEntityManager()->getConnection(); 
     $stmt = $con->executeQuery('SELECT * FROM vMaketType'); 
     $domain = []; 
     //I must fetch it and set it one by one 
     foreach ($stmt->fetchAll() as $row){ 
      $obj = new vMaketType(); 
      $obj->setId($row["Id"]); 
      $obj->setName($row["Name"]); 
      $obj->setAmount($row["Amount"]); 
      array_push($domain, $obj); 
     } 

對我來說這真的需要太多的時間來逐個編碼。

vMaketType是自定義實體我創建了從控制器發送數據到[Twig]視圖。

有沒有更簡單的方法來獲取對象vMaketType數組?

因爲我有24個字段的視圖,我希望有更簡單的方法。

+0

爲什麼你不使用MarketType(我假設這是你的實體與映射信息)? – ccKep

+0

他說這不適用於sql視圖,但我不明白爲什麼:檢出:https://stackoverflow.com/questions/8377671/how-to-set-up-entity-doctrine-for-database -view-in-symfony-2 –

+0

我使用ORM生成模式 – yozawiratama

回答

0

也許你可以用串行嘗試:

$obj = $this->get('serializer')->deserialize($row, 'Namespace\MaketType', 'array'); 

代碼沒有經過測試,調整可以進行,see the related doc

+0

我一直在閱讀它,但它不能用於查看,這就是爲什麼我使用手寫查詢。 :)你應該首先閱讀我的解釋,或cmiiw如果有任何方式orm教條支持視圖 – yozawiratama

+0

新增的例子。顯示你的枝條代碼。 –

+0

cmon,bro,你不明白我在問什麼 – yozawiratama

相關問題