任何Magento Devs的问题:

为什么启用产品具有状态1,而残疾产品的状态为2?通常,“启用”或“活动”或任何获得状态1的内容,而匡威为0。是否有原因为什么Magento在这里使用2?

有帮助吗?

解决方案

首先,甚至不应该重要。
在您的代码中使用这些常数 Mage_Catalog_Model_Product_Status::STATUS_ENABLEDMage_Catalog_Model_Product_Status::STATUS_DISABLED.
到目前为止,我之所以发现,当您想创建产品时,在大多数情况下,您希望启用它。如果残疾状态的值为 0, ,然后选择这是因为当前值通过 $form->setValues($data).
创建产品时 $data 是空的,在下拉菜单的情况下,0 =空。
编辑
我只是想起了其他事情。
最初,状态有一个单独的表,有3个可能的值。

insert  into {$this->getTable('catalog_product_status')}(`status_id`,`status_code`) values (1,'Enabled'),(2,'Disabled'),(3,'Out-of-stock');

您可以添加更多。查看 app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-install-0.7.0.php.
这种方法被掉进了 mysql4-upgrade-0.7.4-0.7.5.php 而且我想,为了兼容,他们保留了状态的ID。

DROP TABLE IF EXISTS {$this->getTable('catalog_product_status')};

其他提示

产品状态值来自Admin中产品管理的“状态”选择字段。 “启用”和“禁用”是具有值1和2的选择字段的选项。这些不是布尔值。

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