表cataloginventory_stock的目的


10

我看到在默认的Magento版本1.0到1.8(ce)中,有一个名为的表cataloginventory_stock仅包含一条记录。

stock_id    stock_name
1           Default

与此相关,在Mage_CatalogInventory_Model_Stock_Item模型中有此方法

public function getStockId()
{
    return 1;
}

上面有评论@todo multi stock

我猜有人想实现多股票功能,但决定不这样做(就像许多其他“功能”一样),但我不确定。

所以我的问题是... 该表还有其他用途,是否会影响代码的其他部分,或者仅仅是作为新功能的起点?


Magento 2已发布。那张桌子还在那里,没用。
DucTM

Answers:


7

在看看这个表的索引,它确实功能完全作为一个独立的除了数据库,暂且

如果您看一下第assignProduct()263行周围的方法,app/code/core/Mage/CatalogInventory/Model/Stock/Item.php您会注意到它引用了方法本身:

 Mage::getSingleton('cataloginventory/stock_status')
        ->assignProduct($product, $this->getStockId(), $this->getStockStatus());

正如您所提到的,我假设是的,将来的平台将能够处理多库存性质的库存系统。

编辑:扩大我的答案,Magento getStockId()总共引用了5个文件中的方法,即:

  • app\code\core\Mage\CatalogInventory\Model\Observer.php 在第204行,
  • app\code\core\Mage\CatalogInventory\Model\Indexer\Stock.php 在第37行,
  • app\code\core\Mage\CatalogInventory\Model\Resource\Stock\Item.php 在第57行,
  • app\code\core\Mage\CatalogInventory\Model\Stock\Item.php 在第167和275行,最后
  • app\code\core\Mage\CatalogInventory\Model\Stock\Status.php 在第36、191、192、265、266和376行

请注意,这是从Magento 1.7.0.2开始的


感谢您的意见和代码的挖掘。您刚刚证实了我的怀疑。
马里乌斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.