uncuncunc
17.04.2012, 14:22:43
Gdzie jest miejsce dla odwołań AJAX używając MVC? W modelu, widoku czy kontrolerze? Np. normalnie wchodzę na stronę www.domena/costam/akcja gdzie costam to kontroler, który odwołuje się do modelu "akcja" i zwraca dane do kontrolera i wysyła je do widoku który je obrabia tzn. prezentuje. Ale jak to samo zrobić przez AJAX? Poza tym że link do odwołania będzie taki sam, to gdzie sprawdzić czy odwołanie jest ajaxowe, i co i gdzie poprzekazywać?
mortus
17.04.2012, 14:49:07
Oczywiści akcja wykonwyana jest w kontrolerach i nie ma znaczenia, czy jest to żądanie AJAX-owe, czy też nie. Zadaniem kontrolera, czy też odpowiedniej akcji w tym kontrolerze jest sprawdzenie, czy żadanie jest żadaniem AJAX-owym i wyłączenie (jeśli to konieczne) renderowania layoutu i widoku, a później zwrócenie danych w odpowiednim formacie. Jeśli żadanie nie jest żadaniem XMLHttpRequest, to wtedy normalnie wykonujemy akcję i renderujemy widok.