Page 1 sur 2

Récupérer dernières article findBy

Posté : 05 mai 2017, 10:42
par Connor
Bonjour à tous,

Sur ma page d'accueil je récupère tout mes articles mais j'aimerai que dans l'en tête j'ai une zone réservé pour afficher le dernier article.

N'étant pas forcément à l'aise avec doctrine, j'ai cherché les différentes façon de faire une requêtes avec ce que j'attends j'ai donc fait ceci

Code : Tout sélectionner

$la = $em->getRepository("Entities\Article")->findOneBy(array('id' => 'desc'));
Mais ça ne marche pas je comprends pas, je lui demande clairement que je fais une recherche du dernier article en prenant l'id par ordre desc no ?

Merci par avance pour votre aide.

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 11:57
par dunbar
Bonjour,

Comme ceci je pense :)
$la = $em->getRepository("Entities\Article")->findBy([], ['id' => 'DESC'], 1);
Ceci dit ton code est correct aussi #-o

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:12
par Connor
Malheureusement non ça ne marche pas :p

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:17
par dunbar
C'est quoi l'erreur ?
Montre le code complet.

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:27
par Connor
pas vraiment d'erreur ma page s'affiche correctement je n'ai juste pas le nom de mon episode qui apparait. Alors que si je fais un :

Code : Tout sélectionner

$la = $em->getRepository("Entities\Article")->findOneByTitre('montitre');
ça fonctionne bien

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:50
par dunbar
Petite question tu as bien un getter pour l'id dans ton Entity ?

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:51
par Connor
Oui absolument

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:55
par dunbar
Que donne
un dump() dans ta vue ?

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 13:59
par Connor
array(1) { [0]=> object(Entities\Article)#96 (5) { ["id":protected]=> int(4) ["auteur":protected]=> string(15) "User 1" ["titre":protected]=> string(11) "Lorem ipsum" ["contenu":protected]=> string(739) "[..]" ["dateAjout":protected]=> string(19) "2017-05-05 10:26:06" } }

C'est pourtant bien ce que j'attends donc pourquoi il me l'affiche pas ?

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:04
par dunbar
erreur :(

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:05
par Connor
No du tout je fais ceci :

<h4>- N° {{ la.id }} - <br/>{{ la.titre }}</h4>

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:07
par dunbar
Montre le code de ton controlleur et ta vue ?

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:14
par Connor
class HomeController extends Controller
{
    public function homeAction($id = false)
    {
        $em = $this->getDoctrine();
        $articles = $em->getRepository("Entities\Article")->findAll();
        $la = $em->getRepository("Entities\Article")->findBy([], ['id' => 'DESC'], 1);
        $comment = $em->getRepository("Entities\Commentaire")->findAll();
        return $this->render('home.html.twig',[
            'articles' => $articles,
            'comment' => $comment,
            'la' => $la
        ]);
    }
}


<body>
<div id="header" class="container-fluid">
    <div id="item_header" class="container">
        <div id="left_item" class="col-md-4">
            <h4><a href="/">My Blog</a></h4>
        </div>
        <div id="item"class="col-md-8">
            <ul>
                <li><a href="/">Home</a></li>
                <li><a href="/login">Login</a></li>

            </ul>
        </div>
    </div>
    <div id="la" class="container">
        <h5>Le dernier épisode</h5>
        <h4>- Episode {{ la.id }} - <br/>{{ la.titre }}</h4>
    </div>
    <div id="buttonMore" class="container">
        <a href="/episode=" class="btnMore" role="button">Voir l'épisode</a>
    </div>
</div>

<div class="container-fluid">

    {% block content %}

    {% endblock %}

</div>

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:18
par dunbar
Et ceci donne quoi ?
 {% for l in la %}
<h4>- Episode {{ l.id }} - <br/>{{ l.titre }}</h4>

{% endfor %}

Comme tu récupère un tableau je pense que ça va aller beaucoup mieux :)

Re: Récupérer dernières article findBy

Posté : 05 mai 2017, 14:21
par Connor
ça marche en faisant ça ^^ mais je comprends pas, pourquoi faire une boucle sachant que j'en ai besoin que d'un ?