2017-07-18 77 views
0

我已經註冊了一個隊列,我想在派遣作業後返回視圖。什麼,我想實現的邏輯是:laravel工作完成後返回視圖?

  1. 點擊按鈕(方法帶給您控制器)
  2. 調度工作
  3. 回報加載屏幕
  4. 一旦任務完成,返回一個視圖與數據。

這是我到目前爲止,返回視圖它不工作。

這是我的代碼:

public function demoIndex(Request $request){ //Controller 

    $text = $request->input('doc'); 
    dispatch(new Do($text)); 

    return view('demo/loading'); //loading screen 
} 

public function handle() 
{ 
    //queue job 
    ... 

    return view('demo/admin', ['search' => $search]); //returning view (not working) 
} 
+0

什麼是你希望它做什麼?隊列處理程序不能真正返回視圖。 – ceejayoz

+1

您無法從作業中返回視圖。您可以派遣工作,然後讓工作在事件完成時拋出一個事件並在前端監聽該事件(這需要進行廣播設置)。或者您可以讓作業設置某種「完成」標籤,並使用ajax定期檢查加載屏幕上的狀態。 – jfadich

回答