如何从字段表返回数据 api(fractal) 已设置默认值?
Posted
技术标签:
【中文标题】如何从字段表返回数据 api(fractal) 已设置默认值?【英文标题】:How to return data api(fractal) from field table has set default value? 【发布时间】:2020-01-30 14:39:28 【问题描述】:我想从字段表中返回默认头像的数据,我将字段的值设置为default.png,当我返回数据时显示为空,我该怎么办?
public function register(Request $request, User $user)
$this->validate($request, [
'fullname' => 'required',
'company' => 'required',
'email' => 'required|email|unique:users',
'password' => 'required|min:8',
'referall' => 'required'
]);
$user = $user->create([
'fullname' => $request->fullname,
'company' => $request->company,
'email' => $request->email,
'password' => bcrypt($request->password),
'api_token' => bcrypt($request->email),
'id_role' => 2,
'referall' => $request->referall
]);
$response = fractal()
->item($user)
->transformWith(new UserTransformer)
->addMeta([
'token' => $user->api_token,
'avatar' => $user->avatar,
])
->toArray();
return response()->json($response, 201);
Field table for avatarReturn API
【问题讨论】:
【参考方案1】:您正在向该行传递一个值(尽管NULL
,这是一个有效值),因此它将显示为NULL
。改成:
$response = fractal()
->item($user)
->transformWith(new UserTransformer)
->addMeta([
'token' => $user->api_token,
'avatar' => $user->avatar ?? 'default.png',
])
->toArray();
仅在省略该值时使用默认值,而不是在 NULL
作为值传递时使用。
阅读材料
Null coalescing operator
【讨论】:
以上是关于如何从字段表返回数据 api(fractal) 已设置默认值?的主要内容,如果未能解决你的问题,请参考以下文章
yajra datatable fractal从包含的属性中删除数据密钥