2015-11-26 15 views
6

Potrzebuję przekazać zmienną do załączonego pliku Blade. Próbowałem tego na dwa sposoby; jednak żaden z nich nie zakończył się sukcesem.Laravel Blade - prześlij zmienną przez @include lub @yield

  1. przekazać zmienną, title, do dołączonego pliku:

    @section('left') 
        @include('modal', ['title' => 'Hello']) 
    @stop 
    
  2. Korzystając @yield i ustawić sekcję:

    @section('left') 
        @include('modal') 
         @section('title') 
         Hello 
         @stop 
    @stop 
    

Używam laravel 4.2. Nie jestem świadomy, czy to, co próbuję zrobić, jest możliwe, ale wyobrażam sobie, że tak.

+0

Jak starasz się wyjście to? Pierwsza opcja jest zdecydowanie ważna. – Tim

+0

Z jakiegoś powodu nie lubi '[]' nawiasów. Używanie 'array ('title' => 'hello')' działa. – monster

+0

Jakiej wersji PHP używasz? Skrócone tablice zostały wprowadzone w PHP 5.4. – Tim

Odpowiedz

7

Według documentation The include -way powinien być sposób, aby to zrobić:

Łącznie Subfunduszy Wyświetleń

@include('view.name')

Można również przekazać tablicę danych do dołączonego widoku:

@include('view.name', array('some'=>'data'))

Moje przeczucie polega na tym, że $title powoduje konflikty z inną zmienną w szablonach zagnieżdżonych. Aby rozwiązać problem, spróbuj tymczasowo nazwać to czymś innym.

+0

Działa to z jakiegoś powodu, ale nie podobały mu się nawiasy '[]. Jak działa "wydajność" - czy jest to poprawna metoda? – monster

+0

Przepraszam, literówka. Należ "' include'. Jeśli chodzi o krótką składnię tablic, być może twoja wersja php nie obsługuje krótkiej składni tablicy. Jakiej wersji używasz? – Dencker

+0

Tak - masz rację! Dzięki. Czy jest to * preferowany * sposób Laravel robienia rzeczy? Np. Wiele obejmuje i przekazuje zmienną do ponownego użycia szablonu? – monster

2

przekazać tablicę danych do dołączonego widzenia

@include('view.name', array('some'=>'data')) 

następnie wykorzystać to na widok/nazwa folderu

{{ $some }} 
Powiązane problemy