• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

API, przekazywanie większej ilości danych

VPS Starter Arubacloud
0 głosów
166 wizyt
pytanie zadane 25 sierpnia 2018 w JavaScript przez mi-20 Stary wyjadacz (13,190 p.)

Witam, 

standardowo, dane w Laravelu przekazuję w taki sposób

public function view($id){
        $article = Article::findOrFail($id);
        return response()->json([
            'data' => $article
        ],200);
    }

odbieram w po stronie frontu równie prosto

getArticle({commit}, id){
    axios(`article/view/${id}`)
      .then(result => commit('ARTICLE', result.data.data))
  },

teraz chciałbym przekazać tych danych więcej, powiedzmy że kategorię, po stronie api to chyba tak powinno wyglądać

$category = Category::where('id', 2)->get();
        return response()->json([
            'status' => 'success',
            'data' => $article,
            'category' => $category
        ],200);

a mój problem polega na tym że nie wiem jak to odebrać po stronie frontu w tej samej akcji.

Można by utworzyć nową trasę API ale wydaje mi się że do takich małych rzeczy nie ma to sensu

1 odpowiedź

+1 głos
odpowiedź 25 sierpnia 2018 przez Gambr Dyskutant (7,530 p.)
wybrane 25 sierpnia 2018 przez mi-20
 
Najlepsza

Mógłbyś z data w response utworzyć kolejnego associative array z szufladką article, która wskaże na $article oraz category na $category.

data => [
 'article' => $article, 
 'category' => $category 
] 

Po stronie front endu otrzymasz obiekt data z dwoma polami, które są obiektami Category i Article.

Ps Jak już pracujesz z API w laravelu to warto zerknąć na resources, zamiast babrać się w response->json() 

komentarz 26 sierpnia 2018 przez mi-20 Stary wyjadacz (13,190 p.)

jeszcze jedno pytanie bo mam mały problem.

kiedy odwołuje się w ten sposób

{{article.article.title}} ///to działa ok
{{article.category.name}} //to nie działa :/

po stronie API mam dokładnie tak jak kolega wcześniej mi napisał

 

Podobne pytania

0 głosów
3 odpowiedzi 278 wizyt
pytanie zadane 19 czerwca 2018 w JavaScript przez mi-20 Stary wyjadacz (13,190 p.)
0 głosów
1 odpowiedź 122 wizyt
pytanie zadane 18 października 2018 w JavaScript przez Gambr Dyskutant (7,530 p.)
0 głosów
1 odpowiedź 420 wizyt
pytanie zadane 15 września 2018 w PHP przez Maikel11 Początkujący (470 p.)

92,453 zapytań

141,262 odpowiedzi

319,086 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...