laravel 5.4如何用动态制作页面标题

Mah*_*med 9 php laravel blade laravel-5 laravel-5.4

我有一条获得艺术家首字母的途径.

这是我的路线

Route::get('/artists/{letter}', 'HomeController@showArtist')->where('letter', '[A-Za-z]+')->name('list');
Run Code Online (Sandbox Code Playgroud)

这是我的控制器showArtist方法

public function showArtist($letter){
        $artists = Artist::where('name', 'like', $letter.'%')->get();
        return view('front.list',compact('artists'));
    }
Run Code Online (Sandbox Code Playgroud)

我想要的是在我的列表页面中按字母顺序列出所有艺术家,我已经按照这个ABC制作了字母菜单,例如,如果单击它将获得所有艺术家的首字母A.

但我的问题是如何在我的页面标题中做出这样的说法,例如"艺术家用字母A乞讨"等.

@section('title','艺术家乞讨'.$ artist-> letter)

我的问题是如何找到字母值?

请帮忙怎么做到这一点?

小智 16

如果这是您的母版页标题

<head>
        <title>App Name - @yield('title')</title>
    </head>
Run Code Online (Sandbox Code Playgroud)

然后您的页面标题可以在您的刀片页面中更改,如下所示

@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
Run Code Online (Sandbox Code Playgroud)

  • 如果标题尚未在您的刀片页面中设置,则“应用名称”的末尾会尴尬地显示一个破折号。如果这对您来说是个问题,请在您的母版页面布局中使用类似的内容:`@if(View::hasSection('title'))@yield('title') - @endif{{ config('app.name ', 'Laravel') }}`。 (2认同)

Mar*_*łek 7

您可以将选定的字母值传递给Blade视图,如下所示:

return view('front.list',compact('artists','letter'));
Run Code Online (Sandbox Code Playgroud)

代替:

return view('front.list',compact('artists'));
Run Code Online (Sandbox Code Playgroud)

现在在您的视图中,您可以使用:

<title>Artists begging with {{ $letter }}</title>
Run Code Online (Sandbox Code Playgroud)