Я пытаюсь создать веб-форму (веб-форма 8.x, Drupal 8), которая требует от пользователя возможности отправлять форму несколько раз.
Чтобы упростить процесс для пользователей, я хотел бы настроить некоторые поля формы для:
- быть пустым при первом посещении формы
- для последующих рендеров формы некоторые поля формы должны быть предварительно заполнены представлениями из предыдущего представления.
Есть ли способ добиться этого с помощью токенов?
Я пытаюсь использовать токены для этого (подробности ниже), но различные подходы не работают.
Все приведенные ниже примеры относятся к имя
поле, которое находится в персональная информация
набор полей.
Я добавил следующие токены в поле значение по умолчанию
поле без везения:
- Эта страница поддержки о токенах веб-форм (для веб-форм 7.x): https://www.drupal.org/comment/reply/2790291 ... советует мне получить доступ к значению, используя:
[представление:значения:личная_информация:имя_имя]
... но это не работает, когда я добавляю его в поле «Значение по умолчанию». Вместо этого я получаю сообщение об ошибке от Drupal:
Значение по умолчанию использует следующие недопустимые токены: [submission:values:personal_information:first_name].
+++
Если я буду следовать указаниям по токену в форме в Webform 8.x, мне, кажется, будет рекомендовано использовать эту структуру для моего токена:
[webform_submission:веб-форма:элемент:first_name]
... в результате метка поля («Имя») предварительно заполняется в поле.
Если я добавлю суффикс :clear, результат будет таким же, метка поля по-прежнему предварительно заполняется в поле.
Пока это самый удачный вариант.
+++
Если я добавлю :value к токену:
[webform_submission:веб-форма:элемент:first_name:значение]
... в результате текст токена предварительно заполняется в поле.
Если я добавлю суффикс :clear:
[webform_submission:веб-форма:элемент:first_name:значение:очистить]
...поле пусто при первой и последующих отправках.
+++
Если я использую это, что, по-видимому, является руководством в разделе токенов о «токенах веб-формы из отправленных данных»:
[webform_submission:значения:first_name]
... он отображает текст токена.
Если я добавлю суффикс :clear:
[webform_submission:значения:first_name:очистить]
...поле пусто при первой и последующих отправках.
Если я включу значение fieldset:
[веб-форма_подчинения: значения: личная_информация: первое_имя]
... сайт возвращает сообщение об ошибке: "LogicException: "[webform_submission:values:personal_information:first_name]" вызывается рекурсивно..." И последующая ошибка yaml после его изменения. Единственный способ решить эту проблему (даже после редактирования yaml формы через CMS или файл конфигурации) — это удалить поле формы, а затем создать его заново.
+++
Если я попытаюсь сделать это:
[webform_submission:значения:first_name:raw]
... он отображает текст токена.
Если я добавлю суффикс :clear, поле будет пустым при первой и последующих отправках.