Laravel资源返回null
返回的laravel资源为null,但数据库中有文件。这是我的资源类Laravel资源返回null,laravel,laravel-resource,Laravel,Laravel Resource,返回的laravel资源为null,但数据库中有文件。这是我的资源类 class UsersResource extends JsonResource { /** * Transform the resource into an array. * * @param \Illuminate\Http\Request $request * @return array */ public function toArray($requ
class UsersResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'u_id' => $this->user_id,
'u_name' => $this->user_name,
];
}
}
我的路线文件在这里
Route::get('test2', function(){
$xyx=Users::find(1);
return new UsersResource($xyx);
});
我的答复如下
{"data":{"u_id":null,"u_name":null}}
谢谢Laravel资源只会格式化您雄辩的模型。 首先检查查询结果(在您的示例中,
$xyx
)
dd($xxx);
正如@Alexandr Biship所提到的,您可能试图访问错误的字段。这是因为默认情况下,Users表不包含user\u id或user\u name列。默认情况下,它是
id
和name
。因此,您应该像下面这样更改代码
class UsersResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'u_id' => $this->id,
'u_name' => $this->name,
];
}
}
请共享用户表结构。它是否包含
user\u id
或user\u name
列?它是id
和name
default@Alexandar谢谢,我从你的评论中得到了提示,而且很有效