В Drupal 8 (последняя версия) у меня есть многошаговая веб-форма, созданная с помощью модуля веб-формы. После выполнения последнего шага я попадаю на страницу подтверждения, URL которой выглядит так:
/node/1/webform/confirmation?token=KxCIo9eUxHC_XJKtDG8erszn5BL5UHBZnRrvJU7Kirw
Теперь я хочу создать пользовательскую страницу подтверждения, и я уже создал модуль, который создает пользовательскую страницу, и это работает. Предположим, это называется аналогичным образом:
/confirmation?token=KxCIo9eUxHC_XJKtDG8erszn5BL5UHBZnRrvJU7Kirw
Мой вопрос: как я могу использовать это значение токена для сбора отправленных данных формы?
Попробовал что-то подобное с моего контроллера страницы подтверждения:
$token = \Drupal::request()->query->get('token');
$webform_submission = \Drupal\webform\Entity\WebformSubmission::load($token);
// Get submission data.
$data = $webform_submission->getData();
// var_dump($data);
$token
значение собрано хорошо, но когда я пытаюсь использовать его, чтобы получить это $webform_submissions
, я получаю нулевое значение, и сбор $data
, конечно, завершается неудачей в следующей строке.
Этот load()
метод ожидает $sid
(идентификатор сеанса), и я не уверен, является ли этот токен идентификатором?