Je crée un formulaire personnalisé dans Drupal 8, je me souviens que nous pouvons rediriger vers un chemin personnalisé dans Drupal 7 avec $form_state['redirect'] = 'mycustompath';
un gestionnaire de soumission personnalisé, mais comment rediriger l'utilisateur après la soumission d'un formulaire dans Drupal 8?
Je sais que je devrais utiliser la submitForm
méthode:
public function submitForm(array &$form, FormStateInterface $form_state)
{
//submissions jobs ...
//redirect path
}
forms
8
redirection
Yusef
la source
la source
$form_state->setRedirect('/start');return;
, supposons que je souhaite rediriger vers la page d'accueil. qu'est-ce qu'un extrait exact?'<front>'
travaillé ce que vous sur l'alias de chemin? c'est ma routetcdev.content: path: '/start' defaults: _controller: 'Drupal\tcdev\Controller\TrainingCenterController::content' _title: 'Start Training Center' requirements: _permission: 'access content'
Si vous souhaitez définir à buildform, vous devez utiliser un chemin de routage comme.
la source
Url' not found
use Drupal\Core\Url;
(sans la barre oblique précédente)$form_state->setRedirectUrl($url);
peut également être utilisé dans submitForm ().Si vous souhaitez rediriger le formulaire de modification de l'utilisateur vers la page d'accueil ou une autre page, suivez le code ci-dessous.
Tout d'abord, ajoutez-hook - hook_form_alter`
après l'ajout du crochet, ajoutez la fonction ci-dessous
J'espère que cette aide.
la source
$form_state->setRedirect()
dans le formulaire d'envoi afin que tous les autres gestionnaires d'envoi puissent être traités.