2013-05-28 76 views
0

我想知道是否有辦法在laravel中爲單個視圖使用可變佈局。Laravel:單個視圖的可變佈局

我有一個登錄部分的視圖。我想通過AJAX調用它來在Lightbox中顯示登錄視圖。我正在考慮在通過ajax調用登錄視圖時使用不同的佈局。 事情是這樣的:

if($_GET["from"] == "ajaxLink") { 
// use layout1 
} else { 
// use layout2 
} 

這顯然行不通。 :) 有沒有什麼辦法可以做到這一點?

謝謝。

回答

1

2種方式。

1.刀片佈局

控制器:

$layout = Request::ajax() ? 'layout1' : 'layout2'; 

$data = array('layout' => $layout); 

return View::make('index', $data); 

檢視:

@layout($layout) 
//rest of the code.... 

2.控制器佈局

public function action_index() 
{ 
    $this->layout = Request::ajax() ? 'layout1' :'layout2'; 
    $this->layout->nest('content', 'index'); 
} 
+0

工作就像一個魅力。謝謝 –

+0

不客氣。上面也增加了控制器佈局approac。 – itachi

+0

@itachi您確定控制器佈局方法可行嗎?當你在動作中設置$ this-> layout'時,你不需要'View :: make()'嗎? –