Hi there stackoverflow!Laravel在Ajax請求中使用「@layout」
在我laravel觀點我使用的是默認的佈局通過調用
@layout('layouts.default')
到同一控制器我發送Ajax請求但我不能把「如果」來如果@layout一個Ajax調用。因爲如果Ajax請求對控制器產生了影響,它也會產生頁眉,頁腳和內容(頁眉和頁腳處於默認佈局)。所以爲了避免這種情況,我做了一個沒有我的視圖@layout的副本。
然而,編輯兩個文件進行更改太無聊了。我不能一個代碼添加到我的觀點類似的東西?:
@if(!$ajaxrequest)
@layout('layouts.master')
@endif
我想這是因爲我的控制器代碼太亂
使用'Request :: ajax()'來確定請求是否是ajax請求。因爲佈局必須是視圖中的第一件事,所以我建議將你的整個layouts.master文件包裝在if語句中,比如'@if(!Request :: ajax())... layout ... @endif ' – David 2013-02-08 18:31:44
在你的控制器中你應該使用'Request :: ajax()'然後有一個'view'使用特定的佈局。那個'view'可以嵌套另一個'view'。嵌套的'view'可以是一個單獨的模板來編輯,然後通過AJAX調用或非AJAX調用來使用。 – Cristian 2013-02-20 13:42:35
這是Laravel 3還是Laravel 4? – rmobis 2013-03-02 03:34:21