Symfony和条令如何获取关联和相关实体
我绞尽脑汁想知道Symfony和Doctrine是如何获取相关实体的 让我们想象一下:我有几个关联的实体:Symfony和条令如何获取关联和相关实体,symfony,doctrine,associations,Symfony,Doctrine,Associations,我绞尽脑汁想知道Symfony和Doctrine是如何获取相关实体的 让我们想象一下:我有几个关联的实体: 公司(多通至城市) 城市(多人对地区,多人对公司) 地区(多个地区到国家,一个地区到城市) 国家(从一个地区到另一个地区) 当我呈现公司表单时,我创建了表单事件侦听器(在PRE_SET_数据上),将区域和国家/地区选择框插入到该表单中。 必须根据相关区域设置这些字段中的值 我通过以下方式检索当前公司区域: $company = $event->getData(); $city =
- 公司(多通至城市)
- 城市(多人对地区,多人对公司)
- 地区(多个地区到国家,一个地区到城市)
- 国家(从一个地区到另一个地区)
$company = $event->getData();
$city = $company->getCity()
这很有效
但当我尝试这个:
$region = $city->getRegion(); // returns NULL
$country = $region->getCountry(); // returns NULL
这些方法返回NULL。但事实上,所有关联都存在,并且条令关联映射是正确的为什么?
根据条令文档:当我为代理对象调用getter时(这些对象是代理,对吗?)-条令应该从数据库获取不足的数据并更新对象。
实际上-方法返回空值
如何获取任何关联实体?(从任何关联深层次)我只需要删除cache dir…您应该尝试从控制器而不是表单类获取它
- $em=$this->getDoctrine()->getManager()李>
- $em->initializeObject($obj)//这将初始化您需要的对象,并从数据库中获取真实的对象,而不是代理类