よろしくお願いいたします。
ルーティングの'/'でアクセスし、indexメソッドを呼び出し、DBを引っ張りつつlayout.blade.phpを呼び出します(名前がよくないのですが、sectionやyieldは使用しておりません。)
トップページを表示後、新規投稿より
{{ route('tops.new') }}
へアクセス。('tops.news'は'/new','TopsController@create'の呼び出しとなります。)
createメソッドを呼び出し、テーブルをオブジェクト化しつつTESTの値をそれぞれのカラムへ
格納しセーブ。
redirectで'tops.list'およびindexメソッドを再度呼び出し。
トップページへ戻る流れです。
現在正常に動作し、TEST内容も反映されるのですが、なぜかcreateメソッドのredirectを
nameでの処理ではなく以下のように記述するとエラーが発生します。(エラー内容画像アップロードしております。)
return redirect('/',['tops'=>$tops]);
こちら、nameでの呼び出し方法でも'/'表記での呼び出し方法でも変わらないと思っていたので、
なぜエラーが発生してしまうのかわかりませんでした。
アドバイスなどいただけますと幸いに存じます。
web.php
1 2use App\tops; 3use Illuminate\Support\Facades\Route; 4 5 6 7Route::get('/','TopsController@index')->name('tops.list'); 8Route::get('/article/{id}','TopsController@show')->name('tops.article'); 9Route::get('/new','TopsController@create')->name('tops.new'); 10
TopsController
1 2 public function index() 3 { 4 $tops = tops::all(); 5 return view('common.layout',['tops'=>$tops]); 6 } 7 8public function create(Request $request) { 9 10 $new = new tops; 11 $new->name='TEST'; 12 $new->job='TEST'; 13 $new->age=29; 14 $new->save(); 15 $tops = tops::all(); 16 return redirect()->route('tops.list',['tops'=>$tops]); 17} 18
HTML
1. 2(中略) 3. 4<div class="main-left"> 5<a class="btn btn-success p-5 m-5" href="{{ route('tops.new') }}">新規投稿</a> 6. 7(中略) 8. 9 <tbody> 10 @foreach ($tops as $top) 11 <tr> 12 <th class="col" scope="row">{{ $top->id }}</th> 13 <td class="ranker">{{ $top->name }}</td> 14 </tr> 15 @endforeach 16 </tbody> 17</div> 18. 19(中略) 20.
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/10 06:22
退会済みユーザー
2020/06/10 08:02
2020/06/10 08:39
退会済みユーザー
2020/06/10 11:19