#はじめに
laravel初心者です。初歩的な質問で申し訳ありません。
現在ポートフォリオを作成しています。製作中に疑問点が浮かびました。
#実現したいこと
MVCのコントローラーにviewを二つ作る方法はありますか?
口コミサイトのトップページはコントローラーのindexを使います。 口コミサイトのお店一覧もコントローラーのindexを使います。お店はURLを貼り付けて表示させるのみです。
イメージ図としてはこのように作成をする予定です。
該当のソースコード
wep.php(ルーティング)
1Route::get('/online_reviews/top', 'OnlineReviewsController@index')->name('top.index'); 2Route::get('/online_reviews/shop', 'OnlineReviewsController@index')->name('shop.index');
ReviewsController.php(コントローラー) namespace App\Http\Controllers; use Illuminate\Http\Request; class OnlineReviewsController extends Controller { public function index() { return view('online_reviews.top'); } public function index() { return view('online_reviews.shop'); } }
top.blade.php
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="utf-8"> 5 <title>top-page</title> 6 <link rel="stylesheet" href="{{ asset('css/online_reviews/top_page.css') }}"> 7 <link href="{{asset('/assets/css/reset.css')}}" rel="stylesheet"> 8</head> 9 <body> 10 <div class="wrapper"> 11 <header> 12 @if (Route::has('login')) 13 <div class="header-left">ロゴ作成予定</div> 14 15 <div class="header-right"> 16 @auth 17 <a href="{{ url('/home') }}">ログアウトはこちら</a> 18 @else 19 <div class=login> 20 <a href="{{ route('login') }}">ログイン</a> 21 </div> 22 <div class=register> 23 @if (Route::has('register')) 24 <a href="{{ route('register') }}">新規会員はこちら</a> 25 @endif 26 </div> 27 @endauth 28 </div> 29 @endif 30 </header> 31 32 <div class="main">mainページ 33 <a href="{{ url('/online_reviews/shop') }}">ショップ一覧</a> 34 </div> 35 </div> 36 </body> 37</html>
shop.blade.php
1//製作中 2<p>shop.blade.php</p> 3<p>shop.blade.php</p>
試したこと
同じコントローラーメソッドを二つ以上宣言することは不可でエラーが発生します。
どのようにしたらできるのでしょうか?調べても中々記事が出てきません。
ご教授のほどよろしくお願いします。
投稿者のバージョン
Laravel Framework 6.20.7
PHP 7.3.23
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。