【发布时间】:2020-02-11 22:46:51
【问题描述】:
我正在创建一个愿望清单,以便用户可以将项目保存到愿望清单。我有产品表、愿望清单表,其中包含 user_id 和 product_id 列,还有数据透视表 product_wishlist 表,其中包含外键 product_id 和 wishlist_id。问题是它没有显示价格,名称等产品信息并且没有显示错误,我不知道我的关系是否错误或有其他问题,我该如何解决这个问题?
Wishlist.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
【问题讨论】:
-
请检查您在
Product.php中的语法,您的关系中有-而不是-> -
什么给了你
dd($wishlists);? -
它在产品@Kusy 中给出
#relations: array:1 [▼ "product" => Collection {#381 ▼ #items: [] }空数组 -
你纠正了
product.php吗? -
是的,我做到了@Kusy
标签: php laravel laravel-5 eloquent