Php 在Laravel中使用Axios检索数组
我正在向我的一个控制器功能发出Axios请求,该功能将进入我的数据库并获取所有供应商信息,但是当它返回到我的VUE文件时,没有数据 这是我的要求:Php 在Laravel中使用Axios检索数组,php,laravel,vue.js,axios,Php,Laravel,Vue.js,Axios,我正在向我的一个控制器功能发出Axios请求,该功能将进入我的数据库并获取所有供应商信息,但是当它返回到我的VUE文件时,没有数据 这是我的要求: mounted(){ axios.get('/product/'+ this.url + '/suppliers/info').then(response=>console.log(response.data)); }, 这是我的控制器功能 public function getSuppliers($
mounted(){
axios.get('/product/'+ this.url + '/suppliers/info').then(response=>console.log(response.data));
},
这是我的控制器功能
public function getSuppliers($product){
$suppliers = $this->supplier->getAll();
return response()->json($suppliers);
}
当我在控制器中添加$suppliers时,它拥有所有数据,因此我知道它已成功地从数据库中检索到,但当我在控制台将其注销时,一旦它返回到VUE,数据就消失了
这是我在控制台日志响应中看到的:-
我可以看到它返回了所有应该存在的数组,但其中没有一个包含任何数据?我做错了什么
这是我在控制器中添加$suppliers时的一段代码:
来自网络的请求标头的图像:-
getAll函数:-
public function getAll()
{
return $this->buildEntities($this->data->orderBy('name')->get());
}
您的
$suppliers
似乎不是一个数组,而是一个雄辩的模型。所以试试这个:
return response()->json(["suppliers"=>$suppliers], 200);
请参见response.data.suppliers中的
**编辑**
问题可能是函数buildEntity。
设法
您的$suppliers
似乎不是一个数组,而是一个雄辩的模型。所以试试这个:
return response()->json(["suppliers"=>$suppliers], 200);
请参见response.data.suppliers中的
**编辑**
问题可能是函数buildEntity。
设法
仍然得到一个空数组,也是你的权利,这是一个雄辩的模型(对不起,我是一个前端的家伙),如果你打印$suppliers->toArray()什么回报?你的意思是添加dd($suppliers->toArray());到控制器?如果是这样的话,我会得到一个错误,说“调用数组上的成员函数toArray()”,好的,是的,您的问题仍然是$suplliers数组,因为如果使用假数组它工作,问题是这样的。试着做一个更简单的查询,比如Suppliers::all()用于测试。仍然得到一个空数组,这也是你的权利。如果你打印$Suppliers->toArray()什么返回,这是一个雄辩的模型(对不起,我是一个前端人员)。你的意思是添加dd($Suppliers->toArray());到控制器?如果是这样的话,我会得到一个错误,说“调用数组上的成员函数toArray()”,好的,是的,您的问题仍然是$suplliers数组,因为如果使用假数组它工作,问题是这样的。尝试创建一个更简单的查询,如用于测试的Suppliers::all()。