Symfony2-按父属性对象查找
我了解查询生成器的工作原理,但我正在尝试正确使用ORM 我有两个实体:天和任务 Tasks实体链接到具有多工单关联的Day实体 Tasks.orm.ymlSymfony2-按父属性对象查找,symfony,doctrine-orm,entity,Symfony,Doctrine Orm,Entity,我了解查询生成器的工作原理,但我正在尝试正确使用ORM 我有两个实体:天和任务 Tasks实体链接到具有多工单关联的Day实体 Tasks.orm.yml DJU\MyBundle\Entity\Tasks: 类型:实体 表:空 repositoryClass:DJU\MyBundle\Entity\TasksRepository 身份证件: 身份证件: 类型:整数 id:对 发电机: 策略:汽车 领域: 说明: 类型:文本 许多人: 天: 目标:天 倒置者:任务 joinColumn: 姓名
DJU\MyBundle\Entity\Tasks:
类型:实体
表:空
repositoryClass:DJU\MyBundle\Entity\TasksRepository
身份证件:
身份证件:
类型:整数
id:对
发电机:
策略:汽车
领域:
说明:
类型:文本
许多人:
天:
目标:天
倒置者:任务
joinColumn:
姓名:days\u id
referencedColumnName:id
存储库是您的解决方案
class TasksRepository {
public function findByDay(Day $day)
{
$q = $this
->createQueryBuilder('t')
->select('t')
->leftJoin('t.days', 'd')
->where("d.id = :dayId")
->setParameter('dayId', $dayId)
->getQuery();
$result = $q->getResult();
return $result;
}
}
使用以下工具查找第一天的任务:
$day = $em->getRepository('DJUMyBundle:Day')->find(1);
$tasks = $em->getRepository('DJUMyBundle:Tasks')->findByDay($day);
谢谢,我终于放弃了,使用了查询生成器。