2015-01-21 5 views
0

Я не могу понять из официальных документов, как создать один элемент флажка из стандартных помощников. У меня уже есть соответствующая логическая сущность в базе данных, и я могу создавать радиостанции или выбирать для нее, и они работают.Как создать единый флажок «flag» в prestashop с помощью помощников формы?

Но мне бы очень хотелось, чтобы один флажок использовался в качестве логического флага.

Кто-нибудь знает как?

ответ

3

Хорошо, ответ заключается в том, чтобы просто использовать тип «switch»: он построит переключатель «ползунок» на странице backoffice. Для будущей справки я собираюсь сообщить о трех разных способах выполнения одной и той же задачи: радио, выбрать и переключить.

Все они были протестированы на AdminAddressesController и привязаны к настраиваемому логическому полю DB, называемому «expo».

//SELECT 

$s_options = array(
    array('expo' => 1, 'name' => 'Yes'), 
    array('expo' => 0, 'name' => 'No') 
); 
$temp_fields[] = array(
    'type' => 'select', 
    'label' => $this->l('Is Expo'), 
    'name' => 'expo', 
    'required' => false, 
    'options' => array(
    'query' => $s_options, 
    'id' => 'expo', 
    'name' => 'name' 
) 
); 

//RADIO 

$s_options = array(
    array('id' => 'expo_on', 'value' => 1, 'label' => $this->l('Yes')), 
    array('id' => 'expo_off', 'value' => 0, 'label' => $this->l('No')), 
); 
$temp_fields[] = array(
    'type' => 'radio', 
    'label' => $this->l('Is Expo'), 
    'name' => 'expo', 
    'required' => false, 
    'class' => 't', 
    'is_bool' => true, 
    'values' => $s_options 
); 

//SWITCH 

$s_options = array(
    array('id' => 'expo_on', 'value' => 1, 'label' => $this->l('Yes')), 
    array('id' => 'expo_off', 'value' => 0, 'label' => $this->l('No')), 
); 
$temp_fields[] = array(
    'type' => 'switch', 
    'label' => $this->l('Is Expo'), 
    'name' => 'expo', 
    'required' => false, 
    'is_bool' => true, 
    'values' => $s_options 
);