[英]Accessing Elements In Doctrine Query Not Working
我有一個Doctrine查詢,其中“ JOIN p.product pr”正在加入產品表及其所有信息(id,名稱,數量,狀態,創建,更新,deletedAt等)。
我的存儲庫類中的自定義函數...
$query = $this->getEntityManager()
->createQuery('
SELECT p
FROM WIC\PurchaseOrderBundle\Entity\PurchaseOrderProductsStatus p
JOIN p.product pr
WHERE p.inventoryLocation = :id
AND p.account = :account_id')
->setParameter('id', $id)
->setParameter('account_id', $account_id);
try{
return $query->getArrayResult();
}catch (\Doctrine\ORM\NoResultException $e) {
return $e;
}
在我的控制器中,我將數組發送到樹枝模板中。
$productActions = My custom function query listed above which returns array
return array(
'heading' => 'Inventory Staging Location',
'productActions' => $productActions,
);
在我的Twig模板中,我現在嘗試遍歷記錄...
{% for productAction in productActions %}
<tr>
<td>{{ productAction.product.sku }}</td>
<td>{{ productAction.product.name }}</td>
<td></td>
</tr>
{% endfor %}
我收到此錯誤...
Key "product" for array with keys "id, qty, status, created, updated, deletedAt" does not exist in ...
我究竟做錯了什么?
當我通過-> findBy()進行查詢時,一切似乎都正常運行。 發送到樹枝模板時,此數組有效
$productActions = $em->getRepository('WICPurchaseOrderBundle:PurchaseOrderProductsStatus')->findBy(array(
"inventoryLocation"=>$inventoryLocation,
"account"=>$account_id,
));
謝謝!
您需要在SELECT部分中請求pr ;)
$query = $this->getEntityManager()
->createQuery('
SELECT p, pr
FROM WIC\PurchaseOrderBundle\Entity\PurchaseOrderProductsStatus p
JOIN p.product pr
WHERE p.inventoryLocation = :id
AND p.account = :account_id')
->setParameter('id', $id)
->setParameter('account_id', $account_id);
try{
return $query->getArrayResult();
}catch (\Doctrine\ORM\NoResultException $e) {
return $e;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.