Trước hết, các giá trị thậm chí không quan trọng.
Sử dụng trong mã của bạn các hằng số này Mage_Catalog_Model_Product_Status::STATUS_ENABLED
và Mage_Catalog_Model_Product_Status::STATUS_DISABLED
.
Lý do tôi tìm thấy cho đến nay là khi bạn muốn tạo một sản phẩm, trong hầu hết các trường hợp bạn muốn nó được kích hoạt. Nếu giá trị cho trạng thái bị vô hiệu hóa 0
, thì giá trị này sẽ được chọn vì cách các giá trị hiện tại được chuyển qua biểu mẫu thông qua $form->setValues($data)
.
Khi tạo một sản phẩm $data
trống và trong trường hợp thả xuống, 0 = trống.
[EDIT]
Tôi chỉ nhớ một cái gì đó khác.
Ban đầu trạng thái có một bảng riêng và có 3 giá trị có thể.
insert into {$this->getTable('catalog_product_status')}(`status_id`,`status_code`) values (1,'Enabled'),(2,'Disabled'),(3,'Out-of-stock');
Và bạn có thể thêm nhiều hơn nữa. kiểm tra app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-install-0.7.0.php
.
Cách tiếp cận này đã được đưa vào mysql4-upgrade-0.7.4-0.7.5.php
và tôi đoán rằng để tương thích, họ giữ nguyên id của các trạng thái.
DROP TABLE IF EXISTS {$this->getTable('catalog_product_status')};