Как создать единый флажок "флаг" в prestashop с помощниками формы?
Я не могу понять из официальных документов, как создать отдельный элемент-флажок из стандартных помощников. У меня уже есть соответствующая логическая сущность в базе данных, и я могу создавать радио или также выбирать для нее, и они работают.
Но то, что я действительно хотел бы иметь один флажок для использования в качестве логического флага.
Кто-нибудь знает как?
1 ответ
Хорошо, ответ заключается в том, чтобы просто использовать тип 'switch': это создаст переключатель 'slider' на странице backoffice. Для дальнейшего использования я сообщу о трех различных способах выполнения одной и той же задачи: радио, выбор и переключение.
Все они были протестированы на AdminAddressesController и привязаны к пользовательскому логическому полю БД под названием "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
);