Pertama-tama, nilai-nilai itu seharusnya tidak penting.
Gunakan dalam kode Anda konstanta ini Mage_Catalog_Model_Product_Status::STATUS_ENABLED
dan Mage_Catalog_Model_Product_Status::STATUS_DISABLED
.
Alasan yang saya temukan sejauh ini adalah ketika Anda ingin membuat suatu produk, dalam kebanyakan kasus Anda ingin itu diaktifkan. Jika nilai untuk status dinonaktifkan adalah 0
, maka ini akan dipilih karena cara nilai saat ini diteruskan ke formulir melalui $form->setValues($data)
.
Saat membuat produk $data
kosong dan, dalam hal dropdown, 0 = kosong.
[EDIT]
Saya baru ingat sesuatu yang lain.
Awalnya status memiliki tabel terpisah dan ada 3 nilai yang mungkin.
insert into {$this->getTable('catalog_product_status')}(`status_id`,`status_code`) values (1,'Enabled'),(2,'Disabled'),(3,'Out-of-stock');
Dan Anda bisa menambahkan lebih banyak. periksa app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-install-0.7.0.php
.
Pendekatan ini dijatuhkan mysql4-upgrade-0.7.4-0.7.5.php
dan saya kira bahwa untuk kompatibilitas mereka menjaga id status.
DROP TABLE IF EXISTS {$this->getTable('catalog_product_status')};