【发布时间】:2023-02-02 23:01:04
【问题描述】:
我有两个使用 make:entity 创建的数据库表
- 参与者(id、名字、姓氏、年龄、性别、学校*、组*、...)
- 学校(id,名字)
Participant 有一个字段“school”,它存储一个 id,它也是一个外键,指向 school 表中的一个条目。
在我的前端,我只想显示参与者表字段的一个子集。 一个简单的解决方案是跳过不相关的字段,但 participant_table.twig 模板在我的应用程序中被多次使用。 应该有不同的视图来显示更多或更少的参与者数据,具体取决于谁在使用视图。 这种方法会导致模板中的逻辑过多,无法控制要显示/隐藏的内容。
所以我需要在 ParticipantRepository.php 类中构建一个自定义查询,它将数据传递给模板。
例子: $query = "participant.Firstname, participant.Lastname, participant.Age, participant.Gender ..."
现在是棘手的部分:如何通过外键获取学校名称?
最后我想要一个具有以下结构的数组:
[
0 => [
"Firstname" => "Jon"
"Lastname" => "Doe"
"Age" => 6
"Gender" => "m"
"School" => "School X"
]
1 => [
"Firstname" => "Mike"
"Lastname" => "Doe"
"Age" => 10
"Gender" => "m"
"School" => "School Y"
]
...
]
在 Symfony、Doctrine 文档、Stack Overflow 中搜索..
【问题讨论】:
-
如果模板中有
Participant实体,{{ participant.school.name }}是否不起作用? -
我没有遵循你问题的模板部分,但如果你想要的只是一个数组数组,那么下拉到 sql 并查询给定视图的确切需求。