我想使用两个类字段在双向关系中进行查询,我的类是:
class Branch {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var Company
*
* @ORM\ManyToOne(targetEntity="Company", inversedBy="branches")
* @ORM\JoinColumn(name="id_company", referencedColumnName="id", nullable=false, unique=false)
*
*/
private $idCompany;
/**
* @var string
*
* @ORM\Column(name="friendly_url", type="string", length=30, nullable=false, unique=true)
*/
private $friendlyUrl;
//...
}
class Company {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var Branch
*
* @ORM\OneToMany(targetEntity="Branch", mappedBy="idCompany")
*/
private $branches;
/**
* @var string
*
* @ORM\Column(name="friendly_url", type="string", length=30, nullable=false, unique=true)
*/
private $friendlyUrl;
//...
}
现在我需要做一个查询,可以通过友好的 url 过滤信息
例如:
网页.com/company_friendly_url/branch_friendlyurl
我输了,因为我不知道如何做正确的查询我正在尝试这个,但它现在正在工作。
$entities = $em->getRepository('AspersoftDirectorioBundle:Company')->findBy(
array(
'friendlyUrl' => $company_friendly_url,
'branches.friendlyUrl' => $branch_friendly_url
)
);
其他人有想法如何做到这一点?