Symfony / SonataAdmin显示两个实体的字段

时间:2014-05-28 09:24:39

标签: symfony sonata-admin

我有两个实体:

  • 包含登录数据的用户(使用FOSUser),
  • 以及其他名为UserInfo的实体中有关它们的信息(姓名,名字,出生日期等)。

在SonataAdmin中,我想管理我的用户(已完成),但我需要在表中添加UserInfo中的字段(名称,名字......)。

有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

根据关系类型,您应该只能引用userinfo.firstName,例如:

public function configureShowFields(ShowMapper $show)
{
    $show->add('userinfo.firstName')
         ->add('userinfo.dob');
}

当然,如果您有很多userinfo个附加到该实体,我认为这不会有效。

答案 1 :(得分:0)

user和userInfo之间必须存在关系。说OneToOne的关系。然后从userInfo实体获取用户数据并显示在Admin端。 即

$subject = $this->getSubject();
$user = $this->subject->getUser();

如果您想进一步对该用户执行操作,将为您提供用户。