Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Frameworki _ [symfony] Formularze ->isSubmitted() zwraca false?

Napisany przez: luis2luis 24.11.2022, 16:44:40

Witam.

Mam w TaskController dwie metody w których generuje formularz wyszukiwarki, nad listą zadań.

Formularz generuje w dwóch metodach. showAll() i showAllFromCat()

Jedna z tych metod.

  1. #[Route('/tasks', name: 'app_task_show_list')]
  2. public function showAll(): Response
  3. {
  4. $tasks = $this->taskRepository->findAll();
  5.  
  6. $formTaskSearch = $this->createForm(TaskSearchType::class, null, [
  7. 'action' => $this->generateUrl('app_task_search'),
  8. 'method' => 'GET',
  9. ]);
  10.  
  11. return $this->renderForm('task/list.html.twig', [
  12. 'tasks' => $tasks,
  13. 'formTaskSearch' => $formTaskSearch
  14.  
  15. ]);
  16. }
  17.  



Obsługą wyszukiwarki zajmuje się inne metoda, chociaż nie wiem czy dobrze to obmyśliłem:

  1.  
  2. #[Route('/tasks/search/', name: 'app_task_search')]
  3. public function search(Request $request)
  4. {
  5.  
  6. $search_phraze = $request->get('task_search')['title'];
  7. $search_in_description = $request->get('search_in_description');
  8.  
  9. $formTaskSearch = $this->createForm(TaskSearchType::class, null, [
  10. 'action' => $this->generateUrl('app_task_search'),
  11. 'method' => 'GET',
  12. ]);
  13. $formTaskSearch->handleRequest($request);
  14.  
  15.  
  16.  
  17. if ($formTaskSearch->isSubmitted() && $formTaskSearch->isValid()) {
  18.  
  19. //tutaj już isSubmitted() zwraca false.
  20.  
  21. $data = $formTaskSearch->getData();
  22.  
  23. }
  24.  
  25. //wyszukuje bez walidacji
  26. $tasks = $this->taskRepository->findTasksFromRequest($request, $search_in_description);
  27.  
  28.  
  29. return $this->renderForm('task/list.html.twig', [
  30. 'tasks' => $tasks questionmark.gif '',
  31. 'header' => 'Szukaj: '.$search_phraze,
  32. 'search_phraze' => $search_phraze,//podstawiam wartości w formularzu.
  33. 'search_in_description' => $search_in_description,
  34. 'formTaskSearch' => $formTaskSearch
  35. ]);
  36.  
  37. }
  38.  


Nie można formularz obsługiwać w innej metodzie? Dlaczego to isSubmitted() zwraca false i co z tym zrobić? smile.gif

Link do githuba z aplikacją: https://github.com/Lechu85/10_todo_app

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)