簡體   English   中英

控制器構造函數Symfony2中的實體管理器

[英]Entity manager in Controller Constructor Symfony2

我正在編寫一個簡單的symfony2應用程序,我想為我的Default Controller創建一個構造函數,並讓它運行帶有主義的查詢。 所以我寫了類似的東西:

public function __construct()
{
  $product = $this->getDoctrine()
    ->getRepository('AcmeStoreBundle:Product')
    ->find($id);

  DefaultController::$products = $product;
}

問題在於它說有對get()上未定義方法的調用。 我想念什么?

這可能是依賴注入(DI)=>的問題,您在控制器的構造函數中,並嘗試從容器中獲取Doctrine對象。 但是,借助DI,此容器將在您的對象構造之后注入。

因此,當您嘗試執行以下操作時:

$this->getDoctrine()...

在容器上沒有方法是很正常的,因為它在控制器中尚不存在。

暫無
暫無

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

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