как отправить данные из контроллера, чтобы включить / заголовочный файл блейда, но вернуть другой файл блейда в laravel - PullRequest
0 голосов
/ 24 марта 2020

Я хочу включить отправку моих данных из моего контроллера в мой файл header.blade.php в представлении, но я хочу вернуть другое представление в laravel, как указано ниже: -

public function handleProviderCallback()
{
    $user = Socialite::driver('google')->stateless()->user(); 
    $finduser = User::where('google_id', $user->id)->first();

    if($finduser) {
        Auth::login($finduser);
        $google_avatar = $user->getAvatar();
        view('pages.home',['google_avatar', $google_avatar]);  
        return redirect()->route('home',);      
    }
}

1 Ответ

0 голосов
/ 24 марта 2020

На расширение макета - самый чистый способ.

Из документов:

<!-- Stored in resources/views/layouts/app.blade.php -->

<html>
    <head>
        <title>App Name - @yield('title')</title>
    </head>
    <body>
        @section('sidebar')
            This is the master sidebar.
        @show

        <div class="container">
            @yield('content')
        </div>
    </body>
</html>

Дочерний элемент:

@extends('layouts.app')

@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

By просто возвращая «дочернее» представление из контроллера, данные также будут доступны в заголовке. Если вы передадите его в декларации @extends 1012 *

...