Laravel - resources zwracanie danych jako tablica z kluczami

Laravel - resources zwracanie danych jako tablica z kluczami
DE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

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

Kopiuj
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?

mr_jaro
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Grudziądz/Bydgoszcz
  • Postów: 5300
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.

jurek1980
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3581
1

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

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

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

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.