2011-11-02 46 views
5

Magento中屬性is_in_stock的功能究竟是什麼?產品是否在庫存可以確定是否qty >= 1magento的使用is_in_stock

它似乎自動調整到當前stock_level(與最小允許數量相比?),但爲什麼然後您可以手動修改它?我覺得它沒有用的修改它,因爲它會改變到任何它想要的東西無論如何..

我無法通過谷歌找到關於此屬性的功能很多信息,所以可能是一個很好的另外:-)。

回答

5

許多規模較小的商家將使用Magento的監控他們的實際「倉庫」(備用房間)產品的庫存水平。有時他們可能會暫時在網上商店中列出缺貨項目,但他們會希望Magento中的庫存號碼能夠反映其他商業原因的庫存數量。換句話說,is_in_stock數據成員可以控制商店如何顯示產品,而不管您手邊有多少物品。

+0

感謝您的回答。但我覺得奇怪的是,似乎有一些代碼會在例如某個訂單被取消('Mage_CatalogInventory_Model_Stock-> backItemQty')時重新設置一個項目。所以一個小商人會將'is_in_stock'設置爲false,然後取消一個訂單(包含產品)並且'is_in_stock'又是真的? –

+0

是的,這是一個執行不力的功能,很明顯,多個團隊的工作不會彼此交談。 –

0

您可能要挖過來:應用程序/代碼/核心/法師/ CatalogInventory /型號/庫存/ Item.php

可能相關的帖子: Magento issue with calling isInStock() method on a product

+0

感謝您的提示。相關帖子也是一個奇怪的事情,但不是我在這裏說的問題:-) –

+0

Np,我對這個區別感興趣,如果你找到了正確的答案,請在這裏發帖,如果可以的話。 – B00MER

0

完全需要在這裏對我的答案進行如此多的道歉。當我看着功能,因爲它是在應用程序/代碼/核心/法師/目錄/型號定義/ Product.php我看到這個非常奇怪的情況:

public function isInStock() 
{ 
    return $this->getStatus() == Mage_Catalog_Model_Product_Status::STATUS_ENABLED; 
} 

所以只要產品被啓用,isInStock將永遠回報真實。告知產品是否出售的功能是isSaleable()。

+0

這是正確的,但不是我在這裏提到的問題。我的意思是StockItem的'is_in_stock'屬性,而不是產品的屬性。 –

+0

對不起,我專注於功能而不是屬性。 您上面提到的手動設置「缺貨」的示例,然後讓訂單取消時系統將其重新設置爲「庫存」,只有當該網站的「管理庫存」配置設置爲「是」時纔會發生這種情況。這也可以在管理員的產品級別上被覆蓋。我們這樣做是因爲我們希望對一些產品進行庫存控制,而不是出售其他產品,而我們永遠不會出售,而庫存則不太受關注。 –