1
连接查询的结果我有2个未通过ORM
相关的表,所以我做JOIN
如下:展在树枝中的Symfony
$dql="SELECT u, o
FROM BackendBundle:Orders o
JOIN BackendBundle:Users u
WITH o.userid=u.id";
$query=$em->createQuery($dql);
当我将查询发送到树枝上表现出来该屏幕显示我一个错误。
这是twig
的代码:
{% for ordenes in pagination %}
<td>{{ ordenes.orderid }}</td>
<td>{{ ordenes.orderdate|date("Y-m-d") }}</td>
{% endfor %}
和错误是这样的:
无论是属性 “订单ID”,也不的方法 “的OrderID()” 之一, “getorderid () “/” isorderid()”或 “__call()” 存在并具有在公共类访问 “BackendBundle \实体\用户”
如果我运行twig
这个代码:
{{dump(pagination)}}
它正确地显示我什么该查询返回:
#currentPageNumber: 3
#numItemsPerPage: 20
#items: array:40 [▼
0 => Orders {#522 ▼
-orderid: 158
-orderdate: DateTime {#476 ▶}
-ordernumber: "FFFFFFFFFFF"
-customername: "UUUUUUUUUUUU"
-customeraddress: "OOOOOO"
-countrycode: "US"
-shippingaddress: "PPPPPP"
-status: "Ordered"
-subtotal: "5.00"
-shippingcost: "2.82"
-tax: "0.00"
-discount: "0.00"
-totalorder: "7.82"
-shippingcarrier: "Fedex"
-userid: "1206"
}
1 => Users {#525 ▼
-id: 1206
-username: "[email protected]"
-yourname: null
-firstname: "GGGG"
-lastname: "IIIIII"
-middlename: ""
-address: "oooooooooo"
-address2: ""
-apartment: ""
-pobox: ""
-city: "Monsey"
-state: "NY"
-zipcode: "88888888"
-country: "USA"
-countrycode: "US"
-email: "[email protected]"
-datein: DateTime {#521 ▶}
}
我的问题是我怎么能证明这个结果在树枝?
什么ar你试图在这里实现吗?您当前构建了订单和用户列表,迭代该列表并输出订单将失败,正如您现在看到循环触及第一个用户实体时那样。如果这是有意的,并且您希望在同一个表中列出订单和用户,那么在决定输出哪些实体字段之前,您需要检查当前分页项(ordenes)是哪个实体。我高度期望你不会试图制造一个混乱的订单和用户列表,但是当你没有说出你期望的结果时,推荐一些东西并不容易。 – JimL
也许你的意思是:'{{for fordedene in pagination.items }}' – Keloo
感谢您的意见。 JimL - 我希望能够显示一张包含用户订单信息的表格。 – juanitourquiza