2015-11-26 25 views
6

Tôi cần phải chuyển một biến cho một tệp Blade bao gồm. Tôi đã thử hai cách này; tuy nhiên, không thành công.Laravel Blade - chuyển biến qua một @include hoặc @yield

  1. Vượt qua một biến, title, đến tập tin bao gồm:

    @section('left') 
        @include('modal', ['title' => 'Hello']) 
    @stop 
    
  2. Sử dụng @yield và thiết lập phần:

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

Tôi đang sử dụng Laravel 4.2. Tôi không biết liệu những gì tôi đang cố làm là có thể, nhưng tôi tưởng tượng nó là như thế.

+0

Bạn đang cố gắng để đầu ra nó? Tùy chọn đầu tiên chắc chắn là hợp lệ. – Tim

+0

Vì lý do nào đó, nó không thích '[]' dấu ngoặc đơn. Mặc dù sử dụng 'mảng ('title' => 'hello')' hoạt động. – monster

+0

Bạn đang sử dụng phiên bản PHP nào? Các mảng viết tắt được giới thiệu trong PHP 5.4. – Tim

Trả lời

7

Theo documentation, các include hai chiều nên là cách để làm điều đó:

Bao gồm Sub-Lần

@include('view.name')

Bạn cũng có thể vượt qua một loạt các dữ liệu đến chế độ xem được bao gồm:

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

Linh cảm của tôi là $title đang xung đột với một biến khác trong mẫu lồng nhau của bạn. Chỉ để khắc phục sự cố, hãy thử tạm gọi nó là điều gì đó khác.

+0

Điều này làm việc, vì một số lý do nó không thích '[]' ngoặc, mặc dù. Cách 'lợi nhuận 'hoạt động như thế nào - nếu đó là cách chính xác? – monster

+0

Xin lỗi, lỗi đánh máy. Có nghĩa là 'bao gồm'. Đối với cú pháp mảng ngắn, có thể phiên bản php của bạn không hỗ trợ cú pháp mảng ngắn. Phiên bản bạn đang sử dụng? – Dencker

+0

Có - bạn đã đúng! Cảm ơn. Đây có phải là cách * ưa thích * Laravel làm việc không? Tức là, nhiều biến bao gồm và biến để sử dụng lại mẫu? – monster

2

vượt qua một loạt các dữ liệu đến các điểm bao gồm

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

sau đó sử dụng này trên quan điểm/tên thư mục

{{ $some }} 
Các vấn đề liên quan