我需要在会话中保存QuoteID并在会话中保存Quote(CART)数据,然后在执行其他操作后单击按钮(例如,我购买了一些项目),我想单击另一个按钮并恢复以前使用Quoteid的购物车。

我正确地使用了会话的报价 Mage::getSingleton('checkout/session')->getQuoteId();

然后我尝试使用

$quote = Mage::getModel('sales/quote')->load($quoteId);
$quote->setIsActive(false); //tried setIsActive(0) too
$quote->save();
Mage::getSingleton('checkout/session')->setQuoteId(null);

但是不幸的是,我仍然有一个填充的购物车,实际上,如果我更改页面,然后回到购物车上,我可以看到它(我希望它在未设置后会空...),在我的数据库上,我可以看到IS_ACTIVE = 1的报价。

我做错了什么?您能帮我弄清楚如何解决这个问题吗?

然后,您知道如何从数据库加载/还原报价并将其设置在会话中,以便在前端购物车中看到它?

有帮助吗?

解决方案

为了完整的目的,我将其添加为答案。

您缺少用于销售功能的功能的括号。 $quote->save(); 缺少括号来调用该功能,而不是访问公共成员。

许可以下: CC-BY-SA归因
scroll top