Bonjour,

Voila je rencontre un petit problème avec mon code.
Voici le code:

object(Illuminate\Database\Eloquent\Collection)#138 (1) { ["items":protected]=> array(0) { } }Entourez votre code pour bien le mettre en forme

voici mon modèle Commentar.php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Commentar extends Model
{
    protected $table = 'commentars';

    protected $fillable = [
        'comment',
        'email',
        'name',
        'slug',
        'status'
    ];

    /*public function article() {
        return $this->belongsTo('App\Models\Article');
    }*/

}

Et voici ma page controller

 public function getPost($request,  $response, $slug) {
        $article = Article::where('slug', $slug)->first();
        //compact(article);
        $comments = Commentar :: where('slug', $slug)->orderBy('id', 'desc')
        ->get();

        //$compte=$comments->count();
        //var_dump($comments);
        //die();

        //die();

        if (!$article) {
            return $response->withRedirect($this->router->pathFor('home'));

        }

         return $this->view->render($response, 'post.twig',compact( article, comments));
     } 

Merci pour votre aide

3 réponses


Michel Mve
Auteur
Réponse acceptée

Bonsoir à tous! Merci pour votre aide, j'ai trouvé le pb. Voici le code:

 $article = Article::where('slug', $slug)->first();
 $comments = $article->comments;

Bonsoir.
Pourrais-tu expliquer pourquoi tu as des espaces ici : Commentar :: where ?

Bonsoir @Lartak j'ai vu une solution, mais le pb demeure.

[{"id":1,"comment":"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\r\n\t\t \ttempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\r\n\t\t \tquis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\r\n\t\t \tconsequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\r\n\t\t \tcillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non\r\n\t\t \tproident, sunt in culpa qui officia deserunt mollit anim id est laborum.","email":"jeneconnaispas@moi.fr","name":"jeneconnaispas","slug":"les-nouvelles-de-villa-samuel","article_id":1,"status":0,"created_at":"2018-07-21 19:45:04","updated_at":"2018-07-20 08:11:00"},{"id":3,"comment":"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod\r\n\t\t \ttempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,\r\n\t\t \tquis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo\r\n\t\t \tconsequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\r\n\t\t \tcillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non\r\n\t\t \tproident, sunt in culpa qui officia deserunt mollit anim id est laborum.","email":"jeneconnaispas@moi.fr","name":"jeneconnaispas","slug":"retour-en-mission","article_id":1,"status":0,"created_at":"2018-07-21 19:45:14","updated_at":"2018-07-20 08:11:00"}]

et voici le code tapait.

$comments = Article::with('comment')->distinct()->get();