2016-03-05 126 views
3

嗨我建立使用laravel 5.2我有一個消息傳遞系統,我想填充某些部分在我的佈局像「當前未讀郵件數」和的總結應用在Laravel 5.2將數據傳遞到佈局最後5條消息。對每個請求

的辦法,我會去了解它是調用一個方法得到我需要的數據,然後將數據傳遞到佈局,然後呈現視圖。

我明白這一點可以用View Composer的做,但我不知道怎麼樣。任何輸入都會非常令人滿意。在此先感謝

+1

訪問數據[Laravel:在每個頁面上都有相同的元素]的可能重複(http://stackoverflow.com/questions/35105578/laravel-having-在-同一元素上每個-的 - 我 - 網頁) – Gal

回答

3

是的,你可以做到這一點與view composer

讓我們假設你有一個my_menu.blade.php視圖文件,並要一些數據傳遞給它。在服務提供商的boot方法做:

//every time the my_menu view is rendered, this callback will be called 
View::composer('my_menu', function($view) 
{ 
    $data = //get your data here 

    //pass the data to the view 
    $view->with('data', $data); 
}); 

現在,每次的my_menu視圖將被渲染,Laravel會調用你的回調,獲取數據,並將數據傳遞給視圖。因此,在您的視圖文件中,您可以使用$data

+2

謝謝你的答案。你說我的作品居然發現了一個視頻laracasts至極解釋了這個非常好,甚至可以顯示你如何可以使ServiceProviders保持這種儘可能乾淨:) https://laracasts.com/series/laravel-5-基本面/次/ 25 – matpulis