2017-10-20 16 views
0

je fais une demande Axios à un de mes fonctions de contrôleur qui se passe dans mon DB et obtenir toutes les informations des fournisseurs mais quand il est de retour à mon dossier VUE il n'y a pas de donnéesRécupération d'un tableau avec Axios dans Laravel

Ceci est ma demande:

mounted(){ 
      axios.get('/product/'+ this.url + '/suppliers/info').then(response=>console.log(response.data)); 

     }, 

et c'est ma fonction de contrôleur

public function getSuppliers($product){ 

     $suppliers = $this->supplier->getAll(); 

     return response()->json($suppliers); 
    } 

Quand je dd des fournisseurs $ dans le contrôleur, il a toutes les données, donc je sais que ce a été récupéré avec succès à partir de la base de données, mais quand je la console, déconnectez-la une fois qu'elle a été retournée à VUE, les données ont disparu.

C'est ce que je vois si je console juste réponse log: - enter image description here

Je peux le voir est de retour tous les tableaux qui devraient être là, mais aucun d'entre eux ont des données? Qu'est-ce que je fais mal?

C'est un extrait de fournisseurs $ quand je DD dans le contrôleur: enter image description here

Image de l'en-tête de demande du réseau: - enter image description here

fonction getAll: -

public function getAll() 
{ 
    return $this->buildEntities($this->data->orderBy('name')->get()); 

} 

Répondre

1

Votre $suppliers ne semble pas être un tableau, mais un modèle éloquent. alors essayez ceci:

return response()->json(["suppliers"=>$suppliers], 200); 

Et voir dans response.data.suppliers

** EDIT **

Le problème peut être la fonction buildEntity. essayer de

$this->data->orderBy('name')->get() 
+0

obtenir encore un tableau vide, votre droit est un modèle éloquent (désolé im un gars frontend) –

+0

si vous imprimez fournisseurs- $> toArray() ce retour? – LorenzoBerti

+0

voulez-vous dire ajouter dd ($ suppliers-> toArray()); au contrôleur? si oui je reçois juste une erreur disant "Appel à une fonction membre toArray() sur le tableau" –