我正在尝试在用户模型中创建一个规则,以检查用户图像是否存在,如果存在则返回完整的图像 url,我正在这样做,但不在 foreach($users as $user) 循环中工作.
public function Image(){
$image = $this->user->image;
if(empty($image)){
$image = asset('images/profile/no-image.png');
}else{
$image = asset('images/profile/no-image.png');
}
return $image;
}
Run Code Online (Sandbox Code Playgroud)
如果您将该功能放在朋友模型上,则将其移至您的用户模型。然后使函数像这样:
public function Image()
{
if ($this->image) {
return asset('images/profile/' . $this->image);
} else {
return asset('images/profile/no-image.png');
}
}
Run Code Online (Sandbox Code Playgroud)
但我建议你使用laravel Accessor:
public function getImageAttribute($value)
{
if ($value) {
return asset('images/profile/' . $value);
} else {
return asset('images/profile/no-image.png');
}
}
Run Code Online (Sandbox Code Playgroud)
然后你可以通过你的模型获取图像属性:
foreach($friends as $friend) {
{{ $friend->user->image }}
}
Run Code Online (Sandbox Code Playgroud)