Pytanie dla wszystkich twórców magento:
Dlaczego produkt włączony ma status 1, a produkt wyłączony ma status 2? Zwykle „włączony” lub „aktywny” lub cokolwiek dostaje status 1, podczas gdy konwersja wynosi 0. Czy istnieje powód, dla którego magento używa tutaj 2?
stock
development
design
status
Benubird
źródło
źródło
Odpowiedzi:
Przede wszystkim wartości nie powinny nawet być ważne.
Użyj w swoim kodzie tych stałych
Mage_Catalog_Model_Product_Status::STATUS_ENABLED
iMage_Catalog_Model_Product_Status::STATUS_DISABLED
.Dotychczas znalazłem powód, dla którego jeśli chcesz utworzyć produkt, w większości przypadków chcesz go włączyć. Jeśli wartość dla statusu wyłączona była
0
, to zostanie ona wybrana, ponieważ sposób, w jaki bieżące wartości są przekazywane do formularza$form->setValues($data)
.Podczas tworzenia produktu
$data
jest pusty, aw przypadku list rozwijanych 0 = pusty.[EDYCJA]
Właśnie przypomniałem sobie coś innego.
Początkowo status miał osobną tabelę i były 3 możliwe wartości.
I możesz dodać więcej. sprawdzić
app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-install-0.7.0.php
.Podejście to zostało odrzucone
mysql4-upgrade-0.7.4-0.7.5.php
i wydaje mi się, że dla kompatybilności zachowali identyfikatory statusów.źródło
wartość statusu produktu pochodzi z pola wyboru „status” z zarządzania produktem w admin. „włączone” i „wyłączone” są opcjami pola wyboru o wartościach 1 i 2. nie są to wartości logiczne.
źródło