Magento2自定义加购报错:请求数量超出购物车最大允许数量
Magento2 自定义加购逻辑触发购物车最大数量限制报错
报错信息
The requested qty exceeds the maximum qty allowed in shopping cart.
(请求数量超出购物车允许的最大数量)
关联业务代码
class CustomAddToCart { public function __construct( \Magento\Checkout\Model\Cart $cart ) { $this->cart = $cart; } public function execute() { $product = .... $this->cart->addProduct($product, ['product' => $product->getId(), 'qty' => 1]); $this->cart->save(); } }
问题详情
- 上述自定义加购逻辑中,显式传入的加购数量参数
qty值为1 - 站点所有商品库存配置为1,全局规则仅允许单件商品加入购物车
- 执行购物车
save()操作时,Magento会自动将购物车内当前已存在的最后一个商品的数量从1修改为2,最终触发上述数量超限报错 - 目前未定位到该自动修改购物车商品数量逻辑的触发原因,需有相关排查经验的开发者协助定位解决
已有排查参考资料
- xdebug断点截图:可展示购物车内最后一个商品数量从1被增加到2的具体断点位置
- xdebug调用栈追踪截图:可展示数量修改逻辑的完整调用链路
内容的提问来源于stack exchange,提问作者Meynard
相关产品推荐
相关产品推荐

