프로그래밍/Laravel5

Laravel - Layout상속

도꼬 2017. 8. 20. 18:08
반응형

페이지 레이아웃을 정의하고 하위페이지느 이를 상속받아서 사용가능하다.

 

resources/views/layouts/master.blade.php

<!DOCTYPE html>
<html lang='ko'>
<head>
    <meta charset='utf-8'>
    <title> @yield('title')</title>
    <link href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container'>
        @yield('content')
    </div>
</body>
</html>

 

 ※

    1. @yield는 자식 컨텐츠가 구현하도록 양보하는 구문

    2. @yield('title','Default Title')로 미구현시 디폴트 값을 정할수 있다.

 

routes/web.php

Route::get('task/list3', function() {
    $tasks= [
        ['name' => 'Response 클래스 분석', 'due_date' => '2015-06-01 11:22:33'],
        ['name' => '블레이드 예제 작성', 'due_date' => '2015-06-03 15:12:42'],
    ];
    return view('task.list3')->with('tasks', $tasks);
});
 

resources/views/task/list3.blade.php

@extends('layouts.master')
@section('title')
    할일 목록
@endsection


@section('content')
    <table class='table'>
        <thead>
            <tr>
                <th>할 일</th>
                <th>기 한</th>
            </tr>
        </thead>
        <tbody>
        @foreach($tasks as $task)
            <tr>
                <td>{{ $task['name'] }}</td>
                <td>{{ $task['due_date'] }}</td>
            </tr>
        @endforeach
        </tbody>
    </table>
@endsection

 

1. @extends('layouts.master')    // 부모 레이아웃페이지를 상속한다.

2. @section('content')~@endsection('content') : 부모 레이아웃페이지에서 @yield로 지정한 영역을 구현

 

반응형

'프로그래밍 > Laravel5' 카테고리의 다른 글

Laravel - Ubuntu 라라벨 설치  (0) 2017.09.13
Laravel - 디버깅  (0) 2017.08.20
Laravel - Blade Template (반복문)  (0) 2017.08.20
Laravel - Blade Template (조건문)  (0) 2017.08.20
Laravel - Blade Template  (0) 2017.08.20