使用FOSUser Bundle编辑另一个用户配置文件
问题描述:
我正在使用symfony和FOSUser Bundle,我在学习,遇到问题,我需要能够显示和编辑使用FOSUser Bundle注册的所有用户。我可以显示每个用户的列表,但是当我尝试使用fos_user_profile_edit编辑它们时,我只能编辑我的帐户,没有其他用户。这里是我的控制器代码:使用FOSUser Bundle编辑另一个用户配置文件
class DefaultController extends Controller
{
/**
* @Route("/", name="homeProfesionales")
*/
public function indexAction()
{
$userManager = $this->get('fos_user.user_manager');
$users = $userManager->findUsers();
return $this->render('GOCProfesionalesBundle:Default:index.html.twig', array('users' => $users));
}
/**
* @Route("/show", name="showProfesionales")
*/
public function showAction($id)
{
$em = $this->getDoctrine()->getManager();
$entity = $em->getRepository('FOSUserBundle:User')->find($id);
return $this->render('GOCProfesionalesBundle:Default:index.html.twig', array('entity'=> $entity));
}
/**
* @Route("/edit", name="editProfesionales")
*/
public function editAction($user)
{
$userManager = $this->get('fos_user.user_manager');
$user = $userManager->findUsers();
return $this->render('GOCProfesionalesBundle:Default:index.html.twig', array('users' => $users));
}
}
在我看来,我只是叫他们:
{% for user in users %}
{{ user.username}}
{{ user.email }}
{% endfor %}
请我需要一些帮助,我该怎么办编辑的所有用户? 。亲切的问候:)
答
FosUserBundle
旨在提供注册/身份验证和配置文件功能,而不是管理员。
看起来你想要在你的网站上实现管理后台来编辑各种实体。有2个第三方软件包,它可以帮助你实现它:
两个软件包提供了与FosUserBundle
集成。我个人认为EasyAdminBundle
更容易使用,更吸引Symfony初学者,并且提供更多功能。
看看索纳塔演示应用程序:https://demo.sonata-project.org/(点击admin
菜单项演示应用程序加载完毕才能到管理部分)
您好@VadimAshikhman的感谢!但事情是,我只需要编辑功能,有没有这些AdminBundles的解决方案? –
当然,创建自定义编辑页面,在其中实现窗体和持久性逻辑。您可以在Symfony文档中阅读更多关于表单创建和实体peraistence的信息 –