質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

7394閲覧

laravelのredirect時のエラーについて

riceCakeMochi

総合スコア10

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2020/07/15 15:04

ネット上のサンプルコードを参考にしながら、確認画面付きの登録画面を
作ろうとしております。

確認画面で"戻る"ボタンを押された場合、入力画面にリダイレクトさせようとしておりますが
下記のエラーが発生してしまいます。

Symfony \ Component \ Routing \ Exception \ RouteNotFoundException
Route [Xxxx.register] not defined.

初期表示には
view('Xxxx.register')->with($data);
で、エラー無く遷移出来るのですが

確認画面では
return redirect()
->route('Xxxx.register')
->withInput($request->except(['action', 'confirming']));
でエラーとなってしまいます。

リダイレクト時は、ルートの設定等を変更する必要があるのでしょうか?
ご教授頂けないでしょうか。

php

1XxxxController.php 2 3<?php 4 namespace App\Http\Controllers\Xxxx; 5 use DB; 6 use App\Http\Controllers\Controller; 7 use Illuminate\Http\Request; 8 9 class RegisterController extends Controller 10 { 11 public function getIndex() 12 { 13 $data = ['confirming' => 'false']; 14 return view('Xxxx.register')->with($data); 15 } 16 17 public function confirm(\App\Http\Requests\XxxxRequest $request) 18 { 19 // 確認モード 20 $data = ['confirming' => 'true']; 21 $req = $request->all(); 22 $tag = explode(',',$request->input('tags')); 23 return view('Xxxx.register')->with($req)->with($data)->with($tag)->with(['tag'=>$tag]); 24 25 } 26 27 // 完了フォーム 28 public function complete(\App\Http\Requests\XxxxRequest $request) 29 { 30 $data = $request->all(); 31 // 確認画面で戻るボタンが押された場合 32 if ($request->get('action') === 'back') { 33 // 入力画面へ戻る 34 return redirect() 35 ->route('Xxxx.register') 36 ->withInput($request->except(['action', 'confirming'])); 37 } 38 // 登録処理を書く予定 39 return view('Xxxx.register_complete'); 40 } 41 } 42

php

1Web.php 2 3# ホーム画面 4Route::get('/Xxxx','Xxxx\XxxxController@getIndex'); 5# 登録_入力画面 6Route::get('/Xxxx/register','Xxxx\RegisterController@getIndex'); 7# 登録_確認画面 8Route::post('/Xxxx/register_confirm','Xxxx\RegisterController@confirm'); 9# 登録_結果画面 10Route::post('/Xxxx/register_complete','Xxxx\RegisterController@complete');

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

php

1Route::get('/Xxxx/register','Xxxx\RegisterController@getIndex')->name('Xxxx.register');

名前付きルート
https://readouble.com/laravel/7.x/ja/routing.html

投稿2020/07/15 15:55

編集2020/07/15 15:57
yuki84web

総合スコア1857

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

riceCakeMochi

2020/07/16 13:12

ありがとうございます。 ルートに名前が付けれるのは知りませんでした! 勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問