Я могу открыть форму в модальном режиме при нажатии на ссылку (примеров в сети тоже много).
Что я люблю делать:
Когда кто-то перейдет по URL-адресу в браузере или перенаправит URL-адрес, он откроет диалоговую/модальную форму.
-Я определил контроллер для URL-адреса
-В функции контроллера я разместил такой код:
$response = новый AjaxResponse();
$title = $this->t('Подтверждение');
$form = $this->formBuilder->getForm('Drupal\example\Form\MyModalForm', $entity);
$response->addCommand(new OpenModalDialogCommand($title, $form, ['width' => '800']));
Но это не открытие модальной формы, а отображение кода json в текстовой области. Конечно, библиотека диалоговых окон может отсутствовать. Итак, я добавил библиотеку:
$form['#attached']['library'][] = 'core/drupal.dialog.ajax';
в форме, в предварительной обработке страницы и т. д. Но ничего не работает.
Он показывает код json, подобный этому (пример)
[{"command":"openDialog","selector":"#drupal-modal","settings":null,"data":"Что-то показать","dialogOptions":{"width":"800", "modal":true,"title":"Подтверждение"}}]
Может ли кто-нибудь помочь мне, как открыть диалоговое/модальное окно при посещении URL-адреса?