从实体获取id

时间:2017-03-23 11:07:35

标签: symfony

我是symfony 2.8的初学者,我使用的是pugxmultiuserBundle。

我的用户是:

  • 管理员
  • 企业公司
  • Etudiant
  • Encadreur
  • Enseignant

对于Enseignan,Etudiant和Entreprise的注册,一切都很完美。

但是我在Encadreur级别的问题,我希望Entreprise管理其Encadreur的帐户创建,创建它的游行,但我不知道如何在成帧器表中恢复当前公司的id {{ 1}} controller of register encadreur Builderform


builderform:

<?php

namespace UserBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use FOS\UserBundle\Controller\RegistrationController as BaseController;
use Symfony\Component\HttpFoundation\RedirectResponse;
use UserBundle\Form\Type\RegistrationEmployeFormType;
use UserBundle\Entity\Encadreur;
use UserBundle\Entity\Entreprise;


class RegistrationEmployeController extends Controller {
   public function registerEmployeAction() {   
     return $this->container
                 ->get('pugx_multi_user.registration_manager')
                 ->register('UserBundle\Entity\Encadreur');

     // $this->setEntreprise($this->getId()) 
  }
}

}

1 个答案:

答案 0 :(得分:0)

如果注册员工的人在企业工作或有参考,您可以从他们的实体获取。

在您的控制器中:

public function registerEmployeAction()
{   
    $user = $this->getUser();
    $entreprise = $user->getEntreprise();
    $encadreuer = $this
                    ->get('pugx_multi_user.registration_manager')
                    ->register('UserBundle\Entity\Encadrer')
                  ;
    $encadreuer->setEntreprise($entreprise);

    return $encadreur;
 }