我的用户模型中有这个函数:
public function adminlte_image()
{
return Employee::where('user_id',$this->id)->get('image');
}
哪个返回:
[
{"image":"Base64 String"}
]
但我想要的只是返回该列的值,而不是json,因为该函数是在img src=中调用的
<img src="Base64 String" class="user-image img-circle elevation-2" alt="Mathias Oliveira">
以下是当前代码的样子:
<img src="[{"image":"Base64 String"}]" class="user-image img-circle elevation-2" alt="Mathias Oliveira">
我无法编辑html或函数的调用方式,只能编辑函数本身。
尝试
public function adminlte_image()
{
return Employee::where('user_id',$this->id)->firstOrFail()->image;
}
CCD_ 1将确保当没有user_id=$this->id,则它不会在null上引发访问image属性的错误,而是在未找到给定user_id=$this->的模型记录时引发ModelNotFound异常;id
如果没有记录而不是ModelNotFound异常,有什么方法可以返回null吗?
public function adminlte_image()
{
$emp = Employee::where('user_id',$this->id)->first();
return $emp ? $emp->image : null;
//OR using optional helper
return optional(Employee::where('user_id', $this->id)->first())->image;
}
Laravel文档:https://laravel.com/docs/8.x/helpers#method-可选