属性 [文件] 在此 collection 实例上不存在 Laravel
Property [file] does not exist on this collection instance Laravel
我有三个 tables('users,cars and photos').
用户table
照片table
我想显示最新的用户头像图片文件。在这种情况下,我想显示为 id = 2 的个人资料头像照片,因为它是用户(id=1)的最新照片,因为 imageable_id=1 并且因为 imageable_type 是给用户的(对于用户头像)。 App\Models\Car属于汽车,暂时不需要。
总结:想给用户头像显示最新照片
我在 blade 文件中使用以下代码:
<img src="{{$detected_user->photo->file}}" alt="">
在 Controller 中,我使用 $detected_user 对登录的用户进行身份验证,并使用“->photo”(我模型中的关系)。 '->file' 是我的 'photos' table.
中的列的名称
用户模型
public function photo() {
return $this->morphMany('App\Models\Photo', 'imageable');
}
汽车型号
public function photo() {
return $this->morphMany('App\Models\Photo', 'imageable');
}
模特写真
public function imageable() {
return $this->morphTo();
}
在 User
模型上,您可以定义两个关系
//App\Models\User.php
public function photos()
{
return $this->morphMany('App\Models\Photo', 'imageable');
}
public function latest_photo()
{
return $this->morphOne('App\Models\Photo', 'imageable')->latest('id');
}
在视图中
<img src="{{$detected_user->latest_photo->file}}" alt="">
Car
模型也类似
//App\Models\Car.php
public function photos()
{
return $this->morphMany('App\Models\Photo', 'imageable');
}
public function latest_photo()
{
return $this->morphOne('App\Models\Photo', 'imageable')->latest('id');
}
我有三个 tables('users,cars and photos').
用户table
照片table
我想显示最新的用户头像图片文件。在这种情况下,我想显示为 id = 2 的个人资料头像照片,因为它是用户(id=1)的最新照片,因为 imageable_id=1 并且因为 imageable_type 是给用户的(对于用户头像)。 App\Models\Car属于汽车,暂时不需要。
总结:想给用户头像显示最新照片
我在 blade 文件中使用以下代码:
<img src="{{$detected_user->photo->file}}" alt="">
在 Controller 中,我使用 $detected_user 对登录的用户进行身份验证,并使用“->photo”(我模型中的关系)。 '->file' 是我的 'photos' table.
中的列的名称用户模型
public function photo() {
return $this->morphMany('App\Models\Photo', 'imageable');
}
汽车型号
public function photo() {
return $this->morphMany('App\Models\Photo', 'imageable');
}
模特写真
public function imageable() {
return $this->morphTo();
}
在 User
模型上,您可以定义两个关系
//App\Models\User.php
public function photos()
{
return $this->morphMany('App\Models\Photo', 'imageable');
}
public function latest_photo()
{
return $this->morphOne('App\Models\Photo', 'imageable')->latest('id');
}
在视图中
<img src="{{$detected_user->latest_photo->file}}" alt="">
Car
模型也类似
//App\Models\Car.php
public function photos()
{
return $this->morphMany('App\Models\Photo', 'imageable');
}
public function latest_photo()
{
return $this->morphOne('App\Models\Photo', 'imageable')->latest('id');
}