Mam tablicę identyfikatorów produktów, wobec których potrzebuję pobrać kolekcję modeli. Tablica jest mniej więcej taka:Laravel: Jak uzyskać niestandardową posortowaną elokwentną kolekcję używając metody WhereIn
$ids = array(9, 2, 16, 11, 8, 1, 18);
Teraz używam poniższego wiersza kodu, aby pobrać kolekcję.
$products = Product::whereIn('id', $ids)->get();
Ale sortuje produkty na podstawie ich identyfikatorów. takie jak: 1, 2, 8, 9, 11, 16, 18
. Potrzebuję tej samej kolejności, co w tablicy $ids
, tj. 9, 2, 16, 11, 8, 1, 18
.
Co należy zrobić, aby uzyskać tę samą kolejność, co w tablicy?
To ciekawe pytanie. Powiedziałbym, że jest to raczej rodzaj niestandardowy niż nieposortowany. –
Chyba znalazłem duplikat za to, że w oparciu o: https://stackoverflow.com/questions/40731863/sort-collection-by-custom-order-in-eloquent –
Nie chcę, aby zamknąć swoje pytanie jako duplikat z tego, ale nie jestem w 100% pewien, że tego właśnie chcesz. Czy odpowiedź na to pytanie rozwiązuje twój problem? –