2014-10-08 1 views
0

Я пытаюсь использовать DRY-подход в своих шаблонах Blade. Как повторно использовать @section вместо копирования нескольких шаблонов.Использование принципа DRY в шаблоне Blade Laravel

Пример:

@section('job_level_menu') 
    @foreach ($job_levels as $job_level) 
    <option value="{{{$job_level->id}}}">{{{$job_level->name}}}</option> 
    @endforeach 
@stop 

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

Во-вторых, у меня есть несколько репозиториев, что является общим для всех мои контроллеры. Можно ли внедрить репозиторий в метод BaseController __construct(), который будет доступен в других контроллерах.

я попытался это, но он не работает:

class BaseController extends Controller { 

    /** 
    * @param MenuRepositoryInterface $menu 
    */ 
    public function __construct(MenuRepositoryInterface $menu){ 

     $this->menu = $menu; 

    } 
} 

ответ

1

Вы можете сохранить этот раздел в отдельном файле и в файлах вам это нужно вы можете использовать:

@include('file_with_section')