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.