我有一个检查角色是否等于1的方法,然后发回一些数据。该方法如下所示:
if($user->role == 1) {
$dmca = Dmca::get()->take(5);
$data = [
'status' => 200,
'data' => $dmca
];
return response($data);
} else {
$dmca = Dmca::where('client', $request->user_id)->get()->take(5);
$data = [
'status' => 200,
'data' => $dmca
];
return response($data);
}
}在$user实例的转储和死掉中,您可以看到角色在那里并已设置。但是当我回来的时候,我得到了错误
#attributes: array:11 [
"id" => 1
"name" => null
"email" => "Grahammorbydev@gmail.com"
"model_name" => "man"
"subscribed" => 0
"email_verified_at" => null
"password" => "$2y$10$yy1Yj.GGez7efEdFdkjaf.RlQS17Zc7QYUANz3RvdE00fVm0f9AYq"
"role" => 1
"remember_token" => null
"created_at" => "2020-07-05 17:54:38"
"updated_at" => "2020-07-05 17:54:38"
]当axios返回时获得以下错误
"Property [role] does not exist on this collection instance."发布于 2020-08-02 19:36:09
如所示错误消息所示
“
”属性角色不存在于此集合实例中。
它表明$user是Collection的一个实例。
你必须改变
$user = User::where('id', $request->user_id)->get();到这个
$user = User::where('id', $request->user_id)->first();get():返回与query.first():匹配的模型集合,返回数据库中找到的第一条记录。如果不存在匹配模型,则返回null.。
https://stackoverflow.com/questions/63219872
复制相似问题