Laravel - Modelli di lama
Laravel 5.1 introduce il concetto di utilizzo Blade, un motore di modelli per progettare un layout unico. Il layout così progettato può essere utilizzato da altre viste e include un design e una struttura coerenti.
Rispetto ad altri motori di creazione di modelli, Blade è unico nei seguenti modi:
Non impedisce allo sviluppatore di utilizzare il semplice codice PHP nelle visualizzazioni.
Le viste blade così progettate vengono compilate e memorizzate nella cache fino a quando non vengono modificate.
La struttura completa delle directory di Laravel è mostrata nello screenshot qui fornito.
Puoi osservare che tutte le visualizzazioni sono memorizzate nel file resources/views directory e la vista predefinita per il framework Laravel è welcome.blade.php.
Si noti che anche altri modelli di blade vengono creati in modo simile.
Passaggi per la creazione di un layout modello blade
Dovrai utilizzare i seguenti passaggi per creare un layout del modello di blade:
Passo 1
Crea una cartella di layout all'interno del file resources/viewscartella. Utilizzeremo questa cartella per memorizzare tutti i layout insieme.
Crea un nome file master.blade.php che avrà il seguente codice associato con esso -
<html>
<head>
<title>DemoLaravel - @yield('title')</title>
</head>
<body>
@yield('content')
</body>
</html>
Passo 2
In questo passaggio, dovresti estendere il layout. L'estensione di un layout implica la definizione degli elementi figlio. Laravel utilizza l'estensioneBlade @extends direttiva per la definizione degli elementi figlio.
Quando estendi un layout, tieni presente i seguenti punti:
Le viste definite nel layout Blade inseriscono il contenitore in un modo unico.
Varie sezioni di vista vengono create come elementi figlio.
Gli elementi figlio vengono archiviati nella cartella layout come file child.blade.php
Un esempio che mostra l'estensione del layout creato sopra è mostrato qui -
@extends('layouts.app')
@section('title', 'Page Title')
@section('sidebar')
@parent
<p>This refers to the master sidebar.</p>
@endsection
@section('content')
<p>This is my body content.</p>
@endsection
Passaggio 3
Per implementare gli elementi figlio nelle viste, è necessario definire il layout nel modo in cui è necessario.
Osserva lo screenshot mostrato qui. Puoi scoprire che ciascuno dei link menzionati nella pagina di destinazione sono collegamenti ipertestuali. Si noti che è anche possibile crearli come elementi figlio con l'aiuto di modelli blade utilizzando la procedura sopra riportata.