我修改了正在處理的magento安裝中的購物車,以便當您要更改衣服價格的大小(從小到大)時,您可以通過使用下拉框來實現,而不必刪除項目並重新添加新尺寸,我如何做到這一點是我從購物車中刪除舊尺寸並添加新尺寸(從某種意義上說,如何一個人會這樣做,如果功能不存在)updateAction如何修改購物車控制器中的庫存
我也編輯了購物車,所以如果你要改變產品的大小從小到大,你已經有一個產品的大小大如果有足夠的庫存,它將合併2的數量(所以如果你想將5小改成5大,並且你已經有3個大,那麼購物車會有餘量更新8大),我怎麼做這是通過檢查如果你的大小改變已經在購物車,如果是這樣,檢查是否有足夠的股票,如果是的話,然後刪除項目你改變的大小和編輯$cartData
變量,它負責處理現有的項目數量的變化,因此改變的數量,這兩種工作
但是我發現的問題是,如果你是有這樣
product | size | qty
---------------------------------------
product 1 | Large | 1
product 1 | Medium | 1
product 1 | Small | 1
一車如果你沒有足夠的股票,即使你沒有增加股票,你也會得到一個錯誤
我已經發現,這是因爲我的方法是在購物車中不存在尺寸時更改尺寸,即使我從購物車中刪除該商品的數量仍然從庫存中消失,換句話說,如果你有一個物品只有1庫存,你刪除它,並再次添加相同的項目,數量爲1,magento會認爲你試圖有一個數量爲2的項目。
現在顯然,解決我交換產品尺寸問題的辦法是強制magento更新庫存,每次我從updateAction的購物車中刪除一個項目,但是甚至在CartController.php文件中看到原始的updateAction,我似乎無法找到函數當商品在購物車中時,magento更新它使用的庫存水平,但是我知道它必須更新一些臨時庫存水平,因爲我已經注意到,即使你有sa y 5的一個項目,5是不是從數據庫中的股票丟失
我的問題是,如何updateAction修改購物車控制器中的股票,一旦我找到它如何做,我可以去強迫它工作在我的updateAction,而不是結束
注:我知道這似乎是愚蠢的交換2種尺寸的相同產品(有效地交換他們在購物車中的位置),但我必須假設用戶是白癡和他們會這樣做一些愚蠢的事