2016-10-26 2 views

ответ

2

Какое обслуживание вы хотите ввести? Как вы его используете?

простой способ разделить переменные во всех представлениях, чтобы вызвать share метод:

view()->share([ 

    'myService' => app()->make(My\Service::class), 
]); 

Вы можете назвать это в контроллере или, возможно, внутри промежуточного слоя для работы во многих различных контроллеров, тоже.

Тогда в ваших взглядах, что-то вроде этого:

@foreach ($myService->getItems() as $item) 
    ... 
@endforeach 
+0

Спасибо, это похоже на добавление @inject ('myService', 'My \ Service :: class'); в каждом шаблоне клинка – harish

+0

** Прохладный ** То, что я искал. – harish

2

Следуйте этим шагам:

создать поставщика услуг: php artisan make:provider UserServiceProvider

Перейти к

приложение \ поставщиков \ UserServiceProvider.php

<?php 

namespace App\Providers; 

use Illuminate\Support\ServiceProvider; 
use Illuminate\Support\Facades\View; 
use Auth; 

class UserServiceProvider extends ServiceProvider 
{ 
    /** 
    * Bootstrap the application services. 
    * 
    * @return void 
    */ 

    public function boot() 
    { 
     // key can be anything 
     // value what you want 
     View::share('key', 'value'); 
    } 

    /** 
    * Register the application services. 
    * 
    * @return void 
    */ 
    public function register() 
    { 
    } 
} 

чем зарегистрировать поставщик услуг внутри config\app.php

App\Providers\UserServiceProvider::class, 

Теперь вы можете получить доступ к этому key для каждых просмотров.

Смежные вопросы