2017-10-18 7 views
1

Je travaille avec symfony et FOSUser Bundle, et j'apprends, je me suis un problème, je dois pouvoir afficher et modifier tous les utilisateurs enregistrés à l'aide FOSUser Bundle. Je peux montrer la liste de tous les utilisateurs mais quand j'ai essayé de les éditer avec fos_user_profile_edit, je n'ai pu modifier mon compte que par le reste des utilisateurs. Voici mon code contrôleur:Modifier un autre profil d'utilisateur à l'aide 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)); 
} 

}

et à mon avis, je viens d'appeler les:

{% for user in users %} 
    {{ user.username}} 
    {{ user.email }} 
{% endfor %} 

S'il vous plaît je besoin d'aide, comment puis-je faire pour modifier tous les utilisateurs? . Cordialement :)

Répondre

0

FosUserBundle destiné à fournir l'enregistrement/authentification et de profil, pas un administrateur.

On dirait que vous voulez implémenter le backend d'administration sur votre site pour éditer diverses entités. Il y a 2 faisceaux tiers qui peuvent vous aider à la mettre en œuvre:

  1. EasyAdminBundle
  2. SonataAdminBundle

Les deux faisceaux permettent une intégration avec FosUserBundle. Personnellement, je pense que EasyAdminBundle est plus facile à utiliser et plus attiré par les débutants Symfony, et offre plus de fonctionnalités.

Jetez un oeil à l'application de démonstration Sonata: https://demo.sonata-project.org/ (Cliquez sur admin éléments de menu pour se rendre à la section d'administration après l'application de démonstration est chargée)

+0

Bonjour @VadimAshikhman merci! mais la chose est que j'ai seulement besoin de la fonction pour éditer, y a-t-il une solution sans ces AdminBundles? –

+0

Bien sûr, créez une page d'édition personnalisée où vous implémentez la forme et la logique de persistance. Vous pouvez en savoir plus sur la création de formulaire et la taille de l'entité dans la documentation de Symfony –