0
我有3个表和我使用YAML,这是相互连接是这样的:加入symfony的2
培训:
oneToMany:
exerciseTrainings:
targetEntity: ExerciseTraining
mappedBy: training
cascade: ["persist", "merge"]
joinColumn:
name: id
referencedColumnName: training_id
锻炼:
oneToMany:
exerciseTrainings:
targetEntity: ExerciseTraining
mappedBy: exercise
cascade: ["persist", "merge"]
joinColumn:
name: id
referencedColumnName: exercise_id
trainingExercises:
manyToOne:
exercise:
targetEntity: Exercise
inversedBy: exerciseTrainings
joinColumn:
name: exercise_id
referencedColumnName: id
training:
targetEntity: Training
inversedBy: exerciseTrainings
joinColumn:
name: training_id
referencedColumnName: id
我需要锻炼表格中的“锻炼名称”练习(基本上来自exercise_translation的名字,但我认为这不是问题),这与我的训练有关,而且我需要从exerciseTrainings表中“设置”。所以我有训练,并尝试连接表:
$training = $em->getRepository('TrenkaTrainingBundle:Training')->findOneByAlias($alias);
$exercises = $em
->getRepository('TrenkaTrainingBundle:Exercise')
->createQueryBuilder('e')
->innerJoin('e.exerciseTrainings', 't')
->where('t.training_id = ' . $training->getId())
->getQuery()
->getResult();
但我得到这个错误:
Class TrainingBundle\Entity\ExerciseTraining has no field or association named training_id
也许有人有相同的结构,并知道如何使它发挥作用?另外如何在TWIG中提供2-3个表格的值?
感谢的答案,但它得到 错误:字符串应为结束,得到了“” – Stopper
哇!感谢它的工作。我得到的树枝名{%用于锻炼锻炼%} {{exercise.name}}但是,如何从树枝exerciseTraining拿到套? – Stopper
什么'{{锻炼。 exerciseTrainings}}'? – Shady