【发布时间】:2020-12-28 12:34:04
【问题描述】:
当我没有准备好使用的确切术语时,很难用一句话来表达这个问题,但我基本上正在从事一个涉及 MySQL 数据库的 Symfony 5 项目。我使用 Twig 允许在我的 PHP 控制器和我的 HTML 界面之间进行通信。到目前为止,我在 Twig 中使用对实体字段的简单引用一直做得很好,例如:
myEntity.someField
为了得到我需要的价值。但是,我目前需要像这样引用“嵌套”字段:
myEntity1.myEntity2Field.someField
“嵌套”使两者之间的世界变得不同。我现在在尝试执行此操作时遇到错误 (Impossible to access an attribute ("someField") on a string variable ("<value from entity2 field>")),
据我了解,可能是因为我的数据库还没有正确组织。希望你能理解我的困难。那么,如何调整我的数据库以允许发生这种双重引用?
注意:myEntity2Field 指的是来自Entity2 的字段的名称,它应该作为对整个Entity2 表的引用,然后可以从中提取someField。
【问题讨论】:
-
错误信息是什么?
-
@hous 对,我编辑了我的原始帖子以包含它
-
你在使用 Doctrine 吗?您是否在 entity1 和 entity2 之间设置了relation?在 twig 中你会有类似的东西: entity1.entity2.someEntity2Property 将转换为 $entity1->getEntity2()->getSomeProperty()。
-
@Cerad 我确实也在使用 Doctrine,但我所知道的 entity1 和 2 之间没有关系。我看看能不能试试你说的方法
标签: php mysql database symfony