首先,感谢我在这个网页上看到的所有精彩回复。社区在这里提供的帮助真是令人难以置信。
现在,我一直在电子商务项目上使用 Laravel 进行练习,并且在使用
darryldecode\cart
包时,在将商品添加到购物车时出现了 validation.required 错误。
错误似乎出现在 Cart.php 的验证函数中
protected function validate($item)
{
$rules = array(
'id' => 'required',
'price' => 'required|numeric',
'quantity' => 'required|numeric|min:1',
'name' => 'required',
);
$validator = CartItemValidator::make($item, $rules);
if ($validator->fails()) {
throw new InvalidItemException($validator->messages()->first());
}
return $item;
}
这是我在控制器中的逻辑:
public function add(Product $product)
{
\Cart::session(auth()->id())->add(array(
'id' => uniqid($product->id),
'name' => $product->name,
'price' => $product->price,
'quantity' => 1,
'attributes' => array(),
'associatedModel' => $product
));
return redirect()->route('cart.index');
}
最后是观点:
<a href="{{ route('cart.add', $product->id)}}" class="card-link">Add to cart</a>
发现一个类似的线程,它没有显示足够的信息,所以它根本没有进展。 Laravel 5.8 使用 darryldecod 添加到购物车