【发布时间】:2018-11-07 10:17:35
【问题描述】:
我正在传递一个带有 3 个变量的 POST 请求
Id (Randomly Generated),
Name (Specified)
Capacity (Specified)
来自 Angular 服务帖子。这些在 POST 的负载中,也可以在 Laravel 资源控制器方法“store()”的$request 变量中看到。
public function store(Request $request)
{
$servers = new Server();
return $request->getContent();
}
在 Chrome 的开发者工具中>network>POST 请求>在预览中我得到了这个
[{name: "bakar", capacity: 50, id: 8012}]
0: {name: "bakar", capacity: 50, id: 8012}
但是当我使用
public function store(Request $request)
{
$servers = new Server();
$data = $request->getContent();
$servers->id = $data->id;
$servers->name = $data->name;
$servers->capacity = $data->capacity;
$servers->save();
}
在上述方法中,我得到一个错误异常说明:
"试图获取非对象的属性"
我该如何解决这个问题?
【问题讨论】:
-
你能试试 dd($request) 看看里面有什么吗?
-
[{name: "bakar", capacity: 50, id: 8012}] 0: {name: "bakar", capacity: 50, id: 8012} 这在请求中!跨度>
-
我要单独 dd($request) 吗?
-
你可以试试$data[0]->id, $data[0]->name, $data[0]->capacity
-
在 dd($request) 之后我得到了一个与属性相关的完整列表,当我应用 getContent() 方法时,它会向我返回请求的正文