Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Добрый день. Столкнулся с какой проблемой.
Есть два шаблона
layout
<!DOCTYPE>
<html>
<head>
</head>
@yield('content')
</html>
и main, который наследует layout
@extends('layout')
@section('content')
<body>
<div class="app">
<section class="layout">
<section class="main-content">
<div class="content-wrap">
@yield('content')
</div>
</section>
</section>
</div>
</body>
@stop
в контроллере, назначаю main, т.е как я думаю он должен будет использоваться в 90%
class BaseController extends OriginBaseController
{
public $layout = 'main';
public function index()
{
$this->layout->content = View::make('index');
}
}
view index
@section('content')
<div>
<h1>Dashboard</h1>
</div>
@stop
в итоге хочу получить
<html>
<head>
</head>
<body>
<div class="app">
<section class="layout">
<section class="main-content">
<div class="content-wrap">
<div>
<h1>Dashboard</h1>
</div>
</div>
</section>
</section>
</div>
</body>
</html>
но на самом деле получается
<html>
<head>
</head>
<div>
<h1>Dashboard</h1>
</div>
</html>
как собственно это реализовать, при это в другом шаблоне использовать именно content, потому что если нужно будет срочно поменять основной шаблон, что бы в коде не бегать и не менять руками всё
Не в сети
Не в сети
section и yield - одно и тоже. Замена контента происходит в первом @section('content'), а не в @yield('content').
Не в сети
Решение: переименовать в @section('container').
Не в сети
тогда получается, мне придется в контролере
где то юзать $this->layout->content, а где то $this->layout-> container так?
Не в сети
}%%%(php)
class BaseController extends OriginBaseController
{
public $layout = 'main';public function index()
{
$this->layout->content = View::make($layout);
}
}
%%xD
я имел ввиду $this->layout->content = View::make('index');
Не в сети
Страницы 1