recherche

Maison  >  Questions et réponses  >  le corps du texte

Tri dans Laravel : Trier par différentes colonnes (d'abord par entiers, puis par chaînes)

Je répertorie les articles classés par device.sort_order colonne entière et cette colonne fonctionne bien.

$parts = \App\DevicePart::with('device')->get()->sortBy('device.sort_order')->values();

@foreach($parts as $i)
  {{ $i->device->sort_order }} - {{ $i->title }}
@endforeach

Cela produira une liste qui ressemble à ceci :

1 - Carga
1 - Baseband
2 - Baseband
2 - Conectores
2 - Camera

Donc, maintenant je veux le trier une seconde fois par le champ title sans perdre le premier ordre, afin que les TITRES DES ARTICLES puissent être affichés par ordre alphabétique.

1 - Baseband
1 - Carga
2 - Baseband
2 - Camera
2 - Conectores

Y a-t-il un moyen de procéder ?

P粉124890778P粉124890778264 Il y a quelques jours438

répondre à tous(1)je répondrai

  • P粉099985373

    P粉0999853732024-03-31 17:09:15

    Utilisez ORDER BY sort_order, title, son équivalent dans Laravel est :

    $parts = \App\DevicePart::with('device')
        ->orderBy('sort_order')
        ->orderBy('title')
        ->get();
    

    répondre
    0
  • Annulerrépondre