Laravel – basic info

  laravel

Stworzenie nowego projektu

composer create-project laravel/laravel nazwaProjektu

Zdefiniowane ścieżki aplikacji

routes>web.php

Podstawowy widok

resources>views>welcome.blade.php

Tworzenie controllera

php artisan make:controller nazwaControllera

Tworzenie Controllera typu resource (zapis, odczyt etc.)

php artisan make:controller nazwaControllera -r

Użycie controllera i konkretnej funkcji w nim

Route::get('/contact', 'PagesController@contact' );

Nadawanie ścieżce aliasu, możliwego później do użycia

Route::get('/contact', 'PagesController@contact' )->name('contactPage');

tworzenie przestrzeni na treść

@yield('content')

Użycie przestrzeni w osobnym pliku szablonu

@extends('master')
@section('content')
<h2>Treść podstrony kontakt</h2>
@endsection

@include('layouts.nav')

Ścieżki

{{ URL::asset('custom.css') }} - to podlinkuje custom.css bezpośrednio w katalogu public

Przesyłanie pojedynczej zmiennej

public function contact() {
  $header = 'Przesyłamy tekst';
  return view('pages.contact')->with('header', $header);
 }

a potem w pliku szablonu

{{ $header }}

Przesyłanie większej liczby zmiennych (w szablonie wywołuje się je identycznie, jak wyżej

public function contact() {
    	$header = 'Przesyłamy tekst';
    	$date = 'Kolejne do przekazania';
    	return view('pages.contact', compact('header', 'date'));
}

Zmienne globalne

Utwórz plik config/global.php. Następnie umieść w nim tablicę zmiennych

return [
	'siteTitle' => 'HD Site',
	'tagLine' => 'Do the best'
];

W szablonie odwołujesz się do zmiennych tak:

{{ config('global.siteTitle') }}

Warunek w pętli for w blade „czy pierwszy first”

@foreach( $posts as $post )
   @if ($loop->first)
 
   @else
    <h2>{{$post->title}}</h2>
   @endif
@endforeach