symfony3 doctrine findby

vamos a mostrar mostrar los detalles de un elemento haciendo click sobre el nombre del mismo en la lista que habiamos creado..

agregamos el action correspondiente

/**
     * @Route("/genero/{genusName}", name="genero_show")
     */
    public function showAction($genusName){
    $em = $this->getDoctrine()->getManager();
    $genus = $em->getRepository('AppBundle:Genero')->findOneBy(['name' => $genusName]);
   
    return $this->render('genero/show.html.twig', array(
    'genus' => $genus
    ));
    }

y en el listado le agregamos el link a cada elemento

{% extends 'base.html.twig' %}
{% block body %}
    <table class="table table-striped">
        <thead>
            <tr>
                <th>Genus</th>
                <th># of species</th>
            </tr>
        </thead>
        <tbody>
<tbody>
            {% for genus in genuses %}
                <tr>
                     <a href="{{ path('genero_show', {'genusName': genus.name}) }}">
                            {{ genus.name }}
                     </a>
                </tr>
            {% endfor %}
        </tbody>
        </tbody>
    </table>
{% endblock %}

y creamos el template donde se mostraran los datos del elemento


No hay comentarios:

Publicar un comentario

linux ubuntu mint actualizar chrome

 desde una terminal: $ sudo apt update $ sudo apt install google-chrome-stable