Laravel Crinsane/LaravelShoppingcart associate()不';行不通
在我的Laravel中我正在使用 当我将一种产品添加到我的购物车时,我想让Laravel Crinsane/LaravelShoppingcart associate()不';行不通,laravel,laravel-5,Laravel,Laravel 5,在我的Laravel中我正在使用 当我将一种产品添加到我的购物车时,我想让associate()与App\product模型相关联 这是我的代码: public function store(Request $request) { // store product information to Cart Cart::add($request->id, $request->name, 1, $request->price) ->associate
associate()
与App\product
模型相关联
这是我的代码:
public function store(Request $request)
{
// store product information to Cart
Cart::add($request->id, $request->name, 1, $request->price)
->associate('App\Product');
return redirect(route('cart.index'))
->with('success_message', 'محصول با موفقیت به سبد اضافه شد');
}
但是,当我想访问视图中的模型$item->model->id
时,我会遇到以下错误:
Trying to get property 'id' of non-object (View: C:\xampp\htdocs\digikala\resources\views\cart.blade.php)
编辑:
我的购物车视图(cart.blade.php
)代码:
@foreach(购物车::内容()作为$item)
{{$item->model->id}
@endforeach
我终于可以解决这个问题了
一切都是关于$request
方法中的store()
数据
错误表现为将产品添加到购物车中
我没有将产品ID正确地发布到store()
方法
如果将来有人遇到此问题,我希望首先通过以下代码测试$request
:
public function store(Request $request)
{
return $request;
}
嗯。你的
存储方法没有问题。购物车索引怎么样?你能告诉我们背后的逻辑吗。如果您还可以共享cart.blade.php
代码,那就太好了。@krianalfa,如果您是指cart home视图
文件的话。我将其添加到问题pls see EditI也通过using slug检索我的产品,因为我想保护商品的唯一id,只需确保您使用购物车id的主键即可
public function store(Request $request)
{
return $request;
}
public function store(Request $request)
{
//verify the submitted product
$product = Product::where('slug', $request->input('slug'))->first();
//check if item is available
if($product === null){
return redirect()->route('cart.index')->with('error', 'Unable to add product to cart');
}
else{
Cart::add($product->id, $product->title, 1, $product->price)
->associate('App\Product');
return redirect()->route('cart.index')->with('success', 'Product added to cart');
}
return false;
}