web-dev-qa-db-ja.com

laravel 5.4ダイナミックでページタイトルを作成する方法

アーティストの最初の手紙を受け取るルートがあります。

これは私のルートです

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)

私の質問は、文字の値を見つける方法ですか?

これを達成する方法を助けてください?

9

次のように、選択した文字の値をブレードビューに渡すことができます。

return view('front.list',compact('artists','letter'));

の代わりに:

return view('front.list',compact('artists'));

そして今、あなたはあなたが使うことができるビューで:

<title>Artists begging with {{ $letter }}</title>
7

これが以下のマスターページのタイトルである場合

<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
16
krekto

例を見る

コントローラ

$title = 'Welcome';

return view('welcome', compact('title'));
View

isset($title) ? $title : 'title';
0
V.K. Singh