Doctrine orm 获取父实体中一对多关系的值?
所以我有一个信条2 ORM实体,信任,有几个一对多的关系。我不知道如何填充这些的数组Doctrine orm 获取父实体中一对多关系的值?,doctrine-orm,Doctrine Orm,所以我有一个信条2 ORM实体,信任,有几个一对多的关系。我不知道如何填充这些的数组 class Trust implements \JsonSerializable { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\Column(type="st
class Trust implements \JsonSerializable {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $name;
/**
* @ORM\OneToMany(targetEntity="TrustPurpose", mappedBy="trust")
*/
private $purpose;
public function __construct() {
}
public function jsonSerialize() {
return [
'id' => $this->id,
'name' => $this->name,
[...]
'purpose' => $this->purpose,
[...]
];
}
}
在我的控制器中,我可能会使用如下内容
return new JsonResponse($this->entityManager->find(Trust::class, 1));
并获得以下输出
{
"id" : 1,
"name" : "Some Trust",
"purpose" : {
}
}
我正在努力寻找有关如何编辑实体信任以自动填充我的目的记录的文档
信托目的
class TrustPurpose implements \JsonSerializable {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(type="string", nullable=false)
*/
private $purpose;
/**
* @ORM\ManyToOne(targetEntity="Trust", inversedBy="purpose")
* @ORM\JoinColumn(name="trust_id", referencedColumnName="id")
*/
private $trust;
public function __construct() {
}
public function jsonSerialize() {
return [
'id' => $this->id,
'purpose' => $this->purpose,
'trust' => $this->trust,
];
}
}
看看对不起,这只是懒惰。我将用代码编辑我的问题。@我已经看到了编辑过的帖子-谢谢。谢谢:)您还可以向我们展示TrustPurpose实体的内容吗?在您的Trust::JSONSerialze方法中,$purpose=$this->getPurpose();这将启动目标实体的延迟加载。延迟加载是一个有趣的话题。当然,您也有TrustPurpose尝试序列化信任,因此您可能最终会得到一个无限循环。我强烈建议花点时间来完成手册中的示例