可能有一个看起来像这个代码的实体,当我想实例化这个实体时,dossierClientActif
属性会自动成为dossiersClient
属性的过滤器。
class Contact {
private id;
/**
* @var \Doctrine\Common\Collections\ArrayCollection
*/
private $dossiersClient;
/**
* @var \AppBundle\Entity\DossierClient
*/
private $dossierClientActif;
/**
* @return \Doctrine\Common\Collections\ArrayCollection
*/
public function getDossiersClient()
{
return $this->dossiersClient;
}
/**
* Add dossierClient
*
* @param \AppBundle\Entity\DossierClient $dossierClient
*
* @return Contact
*/
public function addDossierClient(\AppBundle\Entity\DossierClient $dossierClient)
{
$this->dossiersClient[] = $dossierClient;
return $this;
}
/**
* @return DossierClient
*/
public function getDossierClientActif()
{
$criteria = Criteria::create();
$criteria->where(Criteria::expr()->eq('indArchive', 0));
return $this->dossiersClient->matching($criteria)->first();
}
}
答案 0 :(得分:0)
使用具有虚拟属性的JMS序列化程序对我有用。
AppBundle\Entity\Contact:
exclusion_policy: ALL
virtual_properties:
getDossierClientActif:
serialized_name: dossierClientActif
groups: ['contact']
properties:
id:
expose: true
groups: ['contact']
dossiersClient:
expose: true
groups: ['contact']