Drupal интерпретирует чекбокс как integer. Это вызывает некоторое непонимание при работе с полем через Drupal form API. Давайте рассмотрим пример объявления и чтения данных поля формы.
Объявление checkbox поля в вашей форме:
|
|
$form['MY_CHECKBOX'] = [ '#type' => 'checkbox', '#title' => $this->t('My custom checkbox'), '#default_value' => $previous_state, ]; |
Переменная $previous_state будет задавать статус чекбокса — включен или выключен, должна иметь значение 0 или 1.
Когда вы будете читать значения формы после отправки её данных, например в submit обработчике, то в зависимости от состояния чекбокса, вы получите 1 или 0 в качестве значения поля:
|
|
/** * {@inheritdoc} */ public function submit(array &$form, FormStateInterface $form_state) { $checkbox = $form_state->getValue('MY_CHECKBOX'); } |
В коде выше $checkbox примет значение 1 — если галочка включена, и 0 — если она выключена.
Drupal 9/10 Form API
Данная запись опубликована в 18.03.2024 14:08 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 1, 2023 г.
Чтобы изменить штатный макет формы webform-submission-form.html.twig, требуется имплементация своего шаблона.
Для начала определимся с именем шаблона. ...
Читать
Июль 23, 2023 г.
В терминологии Drupal, типы товаров это - бандлы (bundle) сущности commerce_product.
Получить их список можно вот так:
[crayon-69735dc8ba1d4179627692/]
Как результат, в $product_types вы получите массив типов товаров, где ключом является ...
Читать
Май 19, 2023 г.
Посмотрим как получить непосредственный доступ к файлу без загрузки файла в хранилище, при его загрузке в поле типа "file" Form API.
Много гайдов посвящено тому как использовать поле managed_file, а для unmanaged случая считается, что разработчик ...
Читать
Апрель 27, 2023 г.
Небольшой примера кода для работы с таксономией в Drupal 10. Мы запросим дерево дочерних терминов и произведем их рендеринг.
Для начала загрузим какой-либо термин
[crayon-69735dc8ba4e2871041953/]
Следующий шаг - получение дочерних элементов ...
Читать