Maison > développement back-end > tutoriel php > Comment commander les commentaires Laravel par ID de publication ?

Comment commander les commentaires Laravel par ID de publication ?

Linda Hamilton
Libérer: 2024-12-02 02:07:09
original
715 Les gens l'ont consulté

How to Order Laravel Comments by Post ID?

Ordre des commentaires par ID de publication

Dans Laravel, lors d'une itération dans une collection de modèles associés, il est souvent nécessaire de trier les résultats. Par défaut, les commentaires ne sont classés selon aucun critère spécifique, ce qui peut conduire à des résultats potentiellement non triés.

Pour classer les commentaires publiés par l'auteur d'une publication particulière en fonction de leur identifiant de publication, étendez la relation utilisateur-commentaire avec une requête. fonction dans le modèle utilisateur :

<?php
public function comments()
{
    return $this->hasMany('Comment')->orderBy('column');
}
?>
Copier après la connexion

Remplacez "colonne" par le nom réel de la colonne de base de données par laquelle vous souhaitez trier. Cela garantira que les commentaires seront récupérés dans l'ordre spécifié lors de l'accès via la relation de commentaires dans le modèle Post.

Par exemple, pour classer les commentaires par ID de publication par ordre décroissant, utilisez :

<?php
public function comments()
{
    return $this->hasMany('Comment')->orderBy('post_id', 'DESC');
}
?>
Copier après la connexion

Avec cette modification, la boucle foreach peut désormais être modifiée pour afficher les commentaires dans l'ordre souhaité :

<pre class="brush:php;toolbar:false">
foreach($post->user->comments as $comment)
{
    echo "<li>" . $comment->title . " (" . $comment->post->id . ")</li>";
}
Copier après la connexion

Cela affichera les commentaires dans le format suivant commande :

I love this post (3)
This is the second Comment (3)
This is a comment (5)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal