2016-06-09 51 views
0

我想從控制器傳遞數據,以查看傳遞數據控制器,以查看獲得未定義的變量,在Laravel 5.1

$participantView = view('section.participant', ['data' => $result['data']])->render(); 

的$結果[「數據」]是陣列數據(非空)

我做鑑於foreach,並得到了:

未定義的變量:數據

我也用緊湊和'與',但也得到未定義的變量

我的代碼有什麼問題?

+1

嘗試:'返回視圖('section.participant',['data'=> $ result ['data']]);' –

+0

你想對視圖做什麼?爲什麼渲染()?爲什麼不直接返回這樣的視圖: return view('section.participant') - > with('data',$ result ['data']); –

+0

是的,我想傳遞數據來查看。那麼我會返回$數據。這是$ data = ['data_array'=> ['view'=> $ participantView]]; –

回答

0

您必須返回視圖,試試這個:

return view('section.participant', ['data' => $result['data']]); 
0

嘗試使用

$data = $result['data']; 
return view('section.participant', compact('data')); 

它會做的工作。

+0

我將返回$ data,$ data = ['data_array'=> ['view'=> $ participantView]];那我將回到阿賈克斯。 –

0

我想傳遞數據來查看,然後我會返回$data。它是:

$data=['data_array' => ['view' => $participantView ]]; 

在另一個函數中,傳遞的數據很好。

0

試試這個:

$participantView = view('section.participant')->with([ 
    'data' => $result['data'] 
])->render(); 

,並考慮你將不得不使用$數據變量。

+0

它仍然是一樣的,仍然得到未定義的變量數據。我不明白有什麼不對,因爲在其他功能工作 –

+0

嘗試清除緩存php artisan緩存:清除 –

+0

仍然相同。或者我的代碼存在錯誤的方法?我從視圖加載js函數,js函數正在向控制器調用ajax,然後在控制器中傳遞數據以查看。從控制器,這將返回到Ajax視圖。這是錯的嗎? –