首页 > 解决方案 > 愿望清单没有显示 laravel

问题描述

我正在创建一个愿望清单,以便用户可以将项目保存到愿望清单。我有 products 表,wishlist 表,它有user_idproduct_id列,还有我有数据透视表product_wishlist,它有外键product_idwishlist_id. 问题是它没有显示价格,名称等产品信息,也没有显示错误,我不知道我的关系是错误的还是有其他问题,我该如何解决这个问题?

愿望清单.php

class Wishlist extends Model
{
 protected $table = "wishlist";
protected $fillable=['product_id','user_id'];

public function user(){
return $this->belongsTo(User::class);
}

public function product(){
return $this->belongsToMany(Product::class,'product_wishlist','wishlist_id', 'product_id');
}
}

产品.php

 public function wishlist(){
    return $this-belongsToMany(Wishlist::class);
 }

愿望清单控制器

 public function index()
{
    $user = Auth::user();
    $wishlists = Wishlist::with('product')
    ->where('user_id', $user->id)
    ->orderby('id', 'desc')
    ->paginate(6);
    //dd($wishlists);
     return view('front.wishlist', compact('user', 'wishlists'));
}

 @foreach($wishlists as $wishlist)

 <h3 >USD {{$wishlist->name }}</h3>
 <h4 >USD {{$wishlist->price }}</h4>

  @endforeach

标签: phplaravellaravel-5eloquent

解决方案


你需要做

{{ $wishlist->product->price }} 

由于价格是产品的一个属性,因此您需要在访问价格之前访问产品对象。


推荐阅读