Witam!
Mam szablon (widok) strony: menu, środek, stopka. W zależności od kliknięcia na odnośnik w menu chciałbym, żeby w 'środku' ładował się odpowiedni widok.
Jest to sytuacja typu page_chooser ze zwykłego PHP.
Wie ktoś może jak takie cudo zrobić w Laravelu? Wiem, że wstawianie widoku odbywa się przez @include ale czy jest mechanizm podmiany widoku?
Pozdrawiam!
SmokAnalog
4.03.2015, 10:38:52
Nie ma mechanizmu podmiany widoku, bo Laravel to framework backendowy. Musisz dodać kontroler, który ładuje sam widok, np. mojastrona.pl/views/contact, w którym zwracasz HTML widoku bez żadnych dodatkowych danych na wyjściu. Potem Ajaxem wczytujesz ten URL, podając odpowiedni widok jako jego część.
Dzięki za odpowiedzi.
Zastanawia mnie czy nie można zrobić czegoś w rodzaju:
$url = Request::url()
if($url = 'www.moja.strona/podstrona') {
$widok = 'podstrona';
}
return view
('glowny', array('widok' => $widok));
i w widoku głównym
@include(widok)
?
Czy w ogóle w @include mogę stawić zmienna?
Pyton_000
4.03.2015, 12:29:10
Do tego się używa @yield i @extends.
main.blade.php
<!doctype html>
@yield('content')
widok1.blade.php
@extends('main')
@section('content')
Tutaj content wstawiony
@stop
i w kontrolerze
return view('widok1');