在从表中删除记录时,我遇到了 Symfony2 的问题。
我有一个存储以下内容的表:purchaseOrders、purchaseOrderItems 和仓库
采购订单实体“purchaseOrders”
id|name |
-----------
1 |Test |
仓库实体“仓库”
id|name |
---------------------
1 |Test Warehouse |
2 |Test Warehouse 2 |
采购订单表项目实体“purchaseOrderItems”
id|name |purchaseOrder_id|warehouse_id
--------------------------------
1 |Test Item 1 |1 |1
2 |Test Item 2 |1 |1
3 |Test Item 3 |1 |2
purchaseOrder_id 是与名为“purchaseOrders”的表相关联的多对一关系。warehouse_id 是一个多对一关系,链接到一个名为“仓库”的表。
我的 view.html.twig 页面布局如下:
PurchaseOrder
--------------------------------------
| | Item | Warehouse
--------------------------------------
|1| Test Item 1 | Test Warehouse
|2| Test Item 2 | Test Warehouse
|3| Test Item 3 | Test Warehouse 2
如果我从“仓库”表中删除记录#1,我会在这个 view.html.twig 模板中得到一个错误
An exception has been thrown during the rendering of a template ("Entity was not found.") in /Applications/XAMPP/xamppfiles/htdocs/symfonydev/src/WIC/PurchaseOrderBundle/Resources/views/PurchaseOrder/view.html.twig at line 320.
问题是因为当树枝模板试图访问仓库“名称”时,它无法在对象中找到它来呈现它......
我已经尝试了以下条件语句,但没有任何效果,我仍然得到同样的错误:
{% if purchaseOrderItems.warehouses.name != null %}
{{ purchaseOrderItems.warehouses.name }}
{% endif %}
{% if purchaseOrderItems.warehouses.name is defined %}
{{ purchaseOrderItems.warehouses.name }}
{% endif %}
{% if purchaseOrderItems.warehouses.name is not null %}
{{ purchaseOrderItems.warehouses.name }}
{% endif %}
我需要知道的是:
当我删除“仓库”时,如何才能使“purchaseOrderItems”与“仓库”的关系不会中断或将 Null 或 0 放入值中。
问题必须是purchaseOrderItems无法映射到仓库,因为记录已被删除。
请帮助或建议我需要做些什么来防止这种情况发生。
非常感谢!