Запрос Laravel на возврат к POST-маршруту

Я заменил свою сущность на Blog, чтобы лучше объяснить.

У меня следующий маршрут:

Route::get('/blog-category', 'BlogController@showBlogCategory')

который показывает форму с раскрывающимся списком различных категорий блога и некоторыми другими полями ввода, относящимися к категории

Форма POSTs к следующему:

Route::post('/blog-details', 'BlogController@showBlogDetails')

Здесь я проверяю форму запроса и возвращаю обратно, если есть недопустимая категория блога или она отсутствует.

Этот метод называется showBlogDetails, потому что категория и другие поля передаются в следующее представление return view('blog-details', compact('blogCategoryData'))

В этом представлении есть форма для заполнения остальных деталей блога.

И blogCategoryData (для всех данных есть скрытое поле ввода), и сведения о блоге POST привязаны к следующему маршруту:

Route::post('/blog-store', 'BlogController@store')

Это также подтверждается с помощью Request, но если это не удается, он пытается вернуться, чего он не может сделать, поскольку только POST может попасть туда.

Мне нужны поля категории блога, прежде чем я смогу показать детали блога, и Blog не может быть создан без каких-либо материалов, поэтому я тоже не могу его временно создать.

Этот процесс выбора / заполнения полей категории блога с последующим вводом деталей является обязательным, поэтому он должен выполняться в указанном порядке на двух разных страницах.

На данный момент это: GET -> POST (validate) -> POST (validate)

Как лучше всего обойти это или как заставить работать свой текущий поток?


person H H    schedule 26.02.2018    source источник
comment
Почему бы вам не переместить добавление категории на отдельную страницу, а затем на странице создания блога вам нужно только выбрать категорию, которая уже проверена и подтверждена на странице создания категории   -  person ashok poudel    schedule 26.02.2018
comment
@ashokpoudel ты имеешь в виду переместить все на одну страницу?   -  person H H    schedule 26.02.2018
comment
Нет, я имею в виду. создайте страницу, на которой вы создаете категории, а на второй странице, где вы создаете сообщение, создайте раскрывающийся список, где вы можете выбрать категорию и заполнить другое поле сообщения в блоге   -  person ashok poudel    schedule 26.02.2018
comment
@ashokpoudel Я могу это сделать, но я думаю, что это будет дополнительная таблица без всякой причины, потому что на самом деле это не отдельная вещь, и она всегда будет принадлежать одной Blog, поэтому она действительно должна быть в Blog таблице   -  person H H    schedule 26.02.2018
comment
В категории не может быть много сообщений. Давайте рассмотрим пример, где туризм является категорией. Тогда у вас может быть много постов, связанных с туризмом. Итак, вы создали другую таблицу для категории и поместили внешний ключ категории в таблицу блога.   -  person ashok poudel    schedule 26.02.2018


Ответы (1)


один из способов - использовать javascript и, конечно же, ajax для получения данных блога и отображения соответствующего раздела. сначала на странице отображается только раскрывающийся список категорий. после изменения этого на правильную страницу категории выполняет запрос ajax и извлекает данные. затем заменяет его на скрытый «div» и показывает его.

Другой способ - заменить поле категорий на предыдущей странице.

person Amin.Qarabaqi    schedule 26.02.2018