Valori form in submit
Buongiorno,
nel sito che sto realizzando con drupal ho fatto una form modal di ricerca avanza estendendo la
classe FormBase. Ora una volta recuperati i campi selezionati dall'utente nel metodo submitForm,
avrei bisogno di passarli come input ad una view che ho realizzato precedentemente.
Quello che non mi è chiaro è come invocare la vista dal metodo della form, e passare i campi ?
provati alcune metodi come
$testo=$form_state->getValue('testoCerca');
$form_state->setRedirect("view.view-dataset.view-dataset", ['arg_0' => 'ipsum']);
La mia vista si chiama dataset_list_test ed è agganciata alla pagina /view-dataset)
ed ha come parametro di ricerca, un campo chiamato Cerca.
Come devo fare?
Grazie mille per l'aiuto

Risposte
Questo è l'errore che mi da
Questo è l'errore che mi da drupal
dkan-php-fpm | NOTICE: PHP message: Uncaught PHP Exception Symfony\Component\Routing\Exception\RouteNotFoundException: "Route "view.dataset_list_test.view-dataset" does not exist." at /var/www/html/core/lib/Drupal/Core/Routing/RouteProvider.php line 201
dkan-drupal-nginx | 2020/08/20 09:39:28 [error] 6#6: *306 FastCGI sent in stderr: "PHP message: Uncaught PHP Exception Symfony\Component\Routing\Exception\RouteNotFoundException: "Route "view.dataset_list_test.view-dataset" does not exist." at /var/www/html/core/lib/Drupal/Core/Routing/RouteProvider.php line 201" while reading response header from upstream, client: 172.19.0.1, server: dkan, request: "POST /modal/ricercaAvanzataForm HTTP/2.0", upstream: "fastcgi://172.19.0.3:9000", host: "172.19.0.4", referrer: "https://172.19.0.4/modal/ricercaAvanzataForm"
dkan-drupal-nginx | 172.19.0.1 - - [20/Aug/2020:09:39:28 +0000] "POST /modal/ricercaAvanzataForm HTTP/2.0" 500 64 "https://172.19.0.4/modal/ricercaAvanzataForm" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" "-"
Risolto cosi $path =
Risolto cosi
$path = '/view-dataset';
$path_param = [
'Cerca' => "ooooooooooooo",
];
$url = Url::fromUserInput($path, ['query' => $path_param]);
$form_state->setRedirectUrl($url);
All'interno del form poi ho
All'interno del form poi ho dichiarato un input text cosi:
$form['testoCerca'] = [
'#type' => 'inline_template',
'#template' => '<div class="form-group" style="margin-top:3%">
<div class="input-group">
<div class="input-group-prepend">
<svg class="icon icon-primary">
<use xlink:href="/bootstrap-italia/dist/svg/sprite.svg#it-search"></use></svg></div>
<input type="text" class="form-control" id="input-group-2" name="input-group-2" placeholder="Ricerca avanzata all\'interno dei Dataset"
style="font-size:40px;font-family:\'Titillium Web\';color:#455B71">
</div>
</div>',
];
Recuperando il valore della casella di testo cosi
$testo=$form_state->getValue('testoCerca');
$testo1 = $_POST["input-groupt-2"];
Drupal non mi recupera mai nessun valore come devo fare ?
prova a mettere nel
prova a mettere nel form
<?php$form['testoCerca'] = [
'#type' => 'textfield',
'#title' => t('Search'),
'#required' => TRUE
];
?>
e nel submit
<?php
$testo = $form_state->getValue('testoCerca');
...
$form_state->setRedirect("view.dataset_list_test.page_1", ['arg_0' => $testo]);
?>
page_1 è il nome macchina del display utilizzato nella vista, potrebbe essere diverso, nel caso adattalo.