Как проверить ввод пользователя при отправке формы с помощью шаблона проектирования «Работа, Событие, Слушатель»?

Я пытаюсь использовать шаблон проектирования Job, Event, Listener для приложения, над которым я работаю.

Я новичок в Laravel и в этом шаблоне дизайна, но я думаю, что он хорошо подходит для того, что мне нужно.

Это краткий обзор того, над чем я работаю:

У меня есть 3 разные страницы. Каждая страница имеет форму. Когда пользователь заканчивает первую форму, мне нужно направить его во вторую форму, а затем в третью после завершения второй формы. Как только третья форма заполнена, я хочу направить пользователя на другую страницу «Список записей».

Вот что я сделал до сих пор «Надеюсь, я на правильном пути»

В моем контроллере у меня есть два метода. Первый метод «Show ()», отображает правильную форму, основанную на этапе интервью «stage1, stage2, stage 3». Второй метод «store ()». Этот метод будет хранить данные формы в базе данных.

При достижении маршрута show () я отправляю задания StartInterview и DisplayQuestions.

После начала интервью я запускаю событие InterviewWasStarted. Затем, когда вопросы отображают «новую форму», я запускаю событие QuestionsWasDisplayed.

У обоих событий есть слушатели, которые в настоящее время ничего не делают «может быть, я буду использовать позже».

Затем, когда пользователь нажмет кнопку «отправить», будет выполнен метод «store ()».

По маршруту «магазин» я отправляю SaveAnswers и SaveInterview Job. Задание SaveAnswers примет значения формы и отправит их в базу данных. Затем SaveInterview обновит таблицу интервью, указав, что пользователь в настоящее время находится на форме № 2 или форме № 3.

Руководство пожалуйста

У меня есть несколько вопросов, которые я не уверен, каков наилучший «правильный путь». Как мне проверить форму? Буду ли я создавать работу, которая проверяет форму? Если это так, я бы отправил его из метода store () в контроллере, или я бы отправил его из задания SaveAnswers? «Это делает с тех пор, чтобы отправить работу с другой работы?» Мне всегда нужно будет проверять, прежде чем сохранить, поэтому обе задачи должны быть связаны как-то, как SaveAnswer должен прерваться, если проверка не удалась.

Как мне направить пользователя на новую страницу после завершения третьей страницы? С тех пор он направляет пользователя изнутри слушателя «звучит как плохая идея для меня»? Буду ли я перенаправлять использование из прослушивателя WhenInterviewCompleted. я хотел бы создать флэш-данные изнутри слушателя и проверить наличие флэш-данных в контроллере?

Я думаю, что моя проблема в том, что я все еще думаю в терминах процедурного кода, а не из менталитета «говори, не спрашивай».

Я ценю хорошо объясненный ответ, чтобы помочь мне написать правильный путь

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector