Laravel - resources zwracanie danych jako tablica z kluczami

0

Cześć,
Nie wiem czy ja czegoś nie rozumiem czy trzeba zastosować jakieś specjalne triki..
Zwracam wszystkie rekordy z bazy poprzez:

return User::all()->keyBy('id');

Fajnie mi to zwraca tablicę z kluczami jako id servera. Do tego chciałbym dołączyć resources, które pozwoliłoby mi wybrać dokładnie jakie kolumny z bazy miałyby być zwracane. Ale z tego co widzę resources nie działa zbytnio z funkcją keyBy('id').

Jak najlepiej to osiągnąć? Wybierać z bazy tylko kolumny które mnie interesują i zwracać je z funkcją keyBy('id')?
Do czego w takim razie są resources?

0

zacznijmy od tego czemu chcesz w rest dostawać id jako klucz w tablicy? Generalnie to już nie jest tablica tylko obiekt się robi w jsonie. Tablica w jsonie to lista, bez własnych kluczy.

1

Zrób po prostu selecta właściwych kolumn.

User::select('column1','column2')->get();
User::all('column1', 'column2');

Możesz to sobie pogrupować przez groupBy() czy użyć 'keyBy()';

1 użytkowników online, w tym zalogowanych: 0, gości: 1