Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2016, 04:59
weltxo
 
Fecha de Ingreso: abril-2013
Mensajes: 75
Antigüedad: 11 años, 6 meses
Puntos: 2
evitar render controller

Hola amigos, les explico mi caso:

Tengo el siguiente controlador:

Código:
    /**
     * Show profile user
     * 
     * @Route("/community/user/{username}", name="fos_user_community_user")
     */
    public function userAction($username)
    {
        $userManager = $this->get('fos_user.user_manager');
        $user = $userManager->findUserByUsername($username);
        
        return $this->render('FOSUserBundle:Community:show.html.twig', array(
            'user' => $user
        ));
    }
El cual genera una página que imprime la información del usuario. Además, en esta misma página existe un sidebar que imprime enlaces a 6 usuarios de forma aleatoria llamando a través del método aleatoryAction(), cómo podéis ver:

Código:
<div class="row">
    <div class="col-sm-9">
        <!-- User info -->
    </div>
    <div class="col-sm-3">
        <!-- Display aleatory users -->
        {{ render(controller('UserBundle:Community:aleatory')) }}
    </div>
</div>
El controlador que genera aleatoriamente es:

Código:
    /**
     * Choose aleatory users
     * 
     * @Route("/community/display-aleatory", name="fos_user_community_aleatory")
     */
    public function aleatoryAction()
    {
        $userManager = $this->get('fos_user.user_manager');
        $numberOfUsers = count($userManager->findUsers());
        $users = Array();
        
        // randomize all users
        $rand = range(1, $numberOfUsers); 
        shuffle($rand);
        
        for ($i = 1; $i <= $this->container->getParameter('max_users_to_display'); $i++) {
            $user = $userManager->findUserBy(array(
                'id'=>$rand[$i]
            ));
            array_push($users, $user);
        }
        
        return $this->render('FOSUserBundle:Community:displayAleatory.html.twig', array(
            'users' => $users,
        ));
    }
Todo lo explicado funciona correctamente. Pero quiero evitar que el usuario introduzca en la barra de dirección /community/display-aleatory , ya que de este modo generaría ese fragmento de la página, no habiendo estilos, etc.
Podría de alguna manera redirigir estos casos? Y cómo?

Gracias por adelantado