アーティストの最初の手紙を受け取るルートがあります。
これは私のルートです
Route::get('/artists/{letter}', 'HomeController@showArtist')->where('letter', '[A-Za-z]+')->name('list');
これは私のコントローラのshowArtistメソッドです
public function showArtist($letter){
$artists = Artist::where('name', 'like', $letter.'%')->get();
return view('front.list',compact('artists'));
}
私が欲しいのは、すべてのアーティストをアルファベット順に一覧表示するリストページです。たとえば、A B Cのようなアルファベットメニューを作成しました。たとえば、をクリックすると、最初の文字がAのすべてのアーティストが表示されます。
しかし、私の質問は、ページのタイトルでどのように作成できるか、この「Aの文字で物乞いをするアーティスト」などの前例です。
@section( 'title'、 'アーティストが物乞い'。$ artist-> letter)
私の質問は、文字の値を見つける方法ですか?
これを達成する方法を助けてください?
次のように、選択した文字の値をブレードビューに渡すことができます。
return view('front.list',compact('artists','letter'));
の代わりに:
return view('front.list',compact('artists'));
そして今、あなたはあなたが使うことができるビューで:
<title>Artists begging with {{ $letter }}</title>
これが以下のマスターページのタイトルである場合
<head>
<title>App Name - @yield('title')</title>
</head>
次に、ページタイトルをブレードページで以下のように変更できます
@extends('layouts.master')
@section('title', 'Page Title')
@section('sidebar')
@parent
<p>This is appended to the master sidebar.</p>
@endsection
@section('content')
<p>This is my body content.</p>
@endsection
例を見る
コントローラ
$title = 'Welcome';
return view('welcome', compact('title'));
View
isset($title) ? $title : 'title';