모든 마 젠토 개발자를위한 질문 :
활성화 된 제품의 상태가 1 인 반면 비활성화 된 제품의 상태가 2 인 이유는 무엇입니까? 일반적으로 "enabled"또는 "active"또는 상태가 1 인 반면 converse는 0입니다. 대신 magento가 2를 사용하는 이유가 있습니까?
모든 마 젠토 개발자를위한 질문 :
활성화 된 제품의 상태가 1 인 반면 비활성화 된 제품의 상태가 2 인 이유는 무엇입니까? 일반적으로 "enabled"또는 "active"또는 상태가 1 인 반면 converse는 0입니다. 대신 magento가 2를 사용하는 이유가 있습니까?
답변:
우선 모든 가치가 중요하지 않아야합니다.
코드에서 이러한 상수를 사용 Mage_Catalog_Model_Product_Status::STATUS_ENABLED
하고 Mage_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')};