J'essaye de passer '?' et les symboles '=' sur une page en utilisant routing.yml
company.calc:
path: '/form?company={nid}'
defaults:
_controller: FrameworkBundle:Redirect:redirect
_title: 'Calc'
requirements:
_permission: 'access content'
mais les symboles sont transcodés en entités HTML. On dirait form%3Fcompany%3D%3Fcompany%3D18141
et mène à la page 404.
Toutes les idées pour passer la chaîne comme
/form?company=1234
? Cette chaîne est nécessaire pour préremplir le champ du formulaire.
Trouvez la même question ici mais pas de réponse, pas de solution :(.
Vous déclarez les paramètres de requête dans les itinéraires drupal dans un fichier mymodule.routing.yml comme ceci:
mymodule.mailcommitter:
path: '/mailcheck/{uid}'
defaults:
_controller: '\Drupal\mymodule\Controller\ProfilController::checkMailCommit'
_title: 'commit mail'
options:
query:
token: ""
requirements:
_permission: 'access content'
Ensuite, vous créez une URL par route comme ça
'url' => Url::fromRoute('mymodule.mailcommitter', ['uid' => 1], ['query' => ['token' => 'hello']])
Consultez également ce document: https://www.drupal.org/docs/8/api/routing-system/parameters-in-routes/using-parameters-in-routes