@ssrdop

Как избавиться от дублирования в коде при обычном и ajax запросе?

Например у меня есть контроллер User, в котором есть метод Add. Внутри класса я могу свободно использовать этот метод.
Но вот если у меня Форма, которая должна обрабатываться ajax, и соостветственно получает от сервер json данные.

Получается один метод Add должен работать по разному - есть ли какой - либо практичный способ избавиться от переписывания метода для ajax запросов?
На ум приходит только передавать специальный флаг, который будет говорить, что это ajax запрос.
  • Вопрос задан
  • 222 просмотра
Решения вопроса 4
@bagzon
Backend PHP, NodeJs, JS
Ну можно сделать еще один метод AjaxAdd или настроить в роутинге правило, и в нем вызывать стандартный add

Нужна будет валидация, так же уже реализуешь в AjaxAdd
Ответ написан
@ozornick
https://www.google.ru/search?q=php+is+ajax&oq=php+...
Если имеется шаблонизатор, то отключаем весь HTML и отдаем например json
Ответ написан
Комментировать
ArtamonovDenis
@ArtamonovDenis
Full-stack developer
По большей части, зависит от задачи
Если для аякса нужно лишь изменить пару параметров, тогда, думаю, флага будет вполне достаточно
А иначе, лучше разделять методы, наследуя и переопределяя, или же просто, вынося общие участки в отдельный метод
Ответ написан
Комментировать
dmitriylanets
@dmitriylanets
веб-разработчик
в методе add что делается?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы