Php Zend Framework SpeckCart无法正常工作

Php Zend Framework SpeckCart无法正常工作,php,zend-framework2,shopping-cart,zend-session,Php,Zend Framework2,Shopping Cart,Zend Session,我正在ZF2项目中使用SpeckCart购物车模块。我已经设置了模块,它成功地将商品添加到购物车中,但每次调用时都会覆盖相同的商品,而不是添加新商品。请告诉我哪里做错了,下面是代码: public function addAction(){ $prod_id = $this->params()->fromPost('prod_id'); $product = $this->getProductTable()->getProduct($prod_id

我正在ZF2项目中使用SpeckCart购物车模块。我已经设置了模块,它成功地将商品添加到购物车中,但每次调用时都会覆盖相同的商品,而不是添加新商品。请告诉我哪里做错了,下面是代码:

    public function addAction(){
    $prod_id = $this->params()->fromPost('prod_id');
    $product = $this->getProductTable()->getProduct($prod_id);

    $item = new CartItem();
    $item->setDescription($product->name);
    $item->setCartItemId($prod_id);
    $item->setPrice($product->price);

    $cs = $this->getServiceLocator()->get('SpeckCart\Service\CartService');

    $cart = $cs->getSessionCart(true); 
//我认为上面这一行每次都在创建一个新的购物车,这就是问题所在。我无法知道如何使其使用在上次通话中创建的现有购物车

    $cs->addItemToCart($item, $cart);

我是ZF的新手,请让我知道如何正确使用此购物车模块。上面的代码来自我的应用程序的一个操作,每次按下“添加到购物车”按钮时都会调用该操作。

在第一次尝试speckcart模块后才遇到此问题。我认为您的问题在于您正在尝试设置CartItemId。数据库代码(在模块中提供)使购物车项目Id成为一个自动递增的主键字段,因此不应设置该字段,因为数据库应自动创建它

此外,还必须提供数量,因为该数量的数据库字段设置为不接受空值

除此之外,一切都应该有效


希望这能有所帮助。

Speck正在大力开发,许多部件可能仍处于“阿尔法”阶段。您应该能够通过freenode上的IRC频道#speckcommerce直接与speck开发者联系。谢谢@David,不过我已经使用会话容器实现了自己的机制,效果非常好;-)