2016-06-09 102 views
1

我正在嘗試在服務器上獲取Laravel項目;一切工作正常本地,我發送所有文件到服務器,改變routes.php和.env,以便一切都可以工作(數據庫,查詢,路由...)。Laravel - 服務器上的請求錯誤

我工作在一個反向代理之後,但是讓路由起作用並不是問題。

我可以登錄,但我無法訪問或執行任何使用數據庫的內容(登錄除外)。

實施例:

控制器:

public function show($id) { 
    $compte = Compte::find($id); 
    $suiviFormation = User_formation::join('formation', 'formation.id_formation', '=', 'user_formation.id_formation') 
              ->join('type_formation', 'formation.id_type_formation', '=', 'type_formation.id_type_formation') 
              ->where('id_compte', $id) 
              ->where(function($query){ 
               $query->where('formation.id_organisme', 1) 
                 ->orWhere('formation.id_organisme', Auth::user()->id_organisme); 
              }) 
              ->where('valide', 1) 
              ->orderBy('type_formation.nom', 'asc') 
              ->orderBy('formation.nom', 'asc') 
              ->orderBy('date_formation', 'desc') 
              ->get(); 
     $formations = array(); 
     $types = array(); 

     foreach($suiviFormation as $suivi){ 
      $formations[] = Formation::find($suivi->id_formation); 
     } 

     foreach($formations as $formation){ 
      $types[$formation->id_type_formation] = $formation->type_formation->nom; 
     } 


     $userPoste = User_Poste::where('id_compte', $id) 
      ->where('date_fin', null) 
      ->first(); 


     $formationsAvailable = Formation::select('formation.id_type_formation', 'formation.nom', 'formation_importance.importance') 
              ->join('formation_importance', 'formation_importance.id_formation', '=', 'formation.id_formation') 
              ->join('poste', 'poste.id_poste', '=', 'formation_importance.id_poste') 
              ->where('formation_importance.id_poste', $userPoste->id_poste) 
              ->where('importance', '!=', 1) 
              ->orderBy('formation.nom', 'asc') 
              ->groupBy('formation.id_formation') 
              ->get(); 

     return view('formation/formation_show', ['compte' => $compte, 'types' => $types, 'suiviFormation' => $suiviFormation, 
      'formations' => $formations, 'formationsAvailable' => $formationsAvailable]); 
    } 

錯誤:

QueryException in Connection.php line 624: SQLSTATE[42S02]: Base table or view not found: 
1146 Table 'greement.Formation' doesn't exist 
(SQL: select * from `Formation` where `Formation`.`id_formation` = 61 limit 1) 

每一個誤差看起來像這一個。


瞭解到數據庫連接的一部分正在工作,其他頁面如何工作?

.ENV:

APP_ENV=local 
APP_DEBUG=true 
APP_KEY= appkey 
DB_HOST= database.host 
DB_DATABASE=greement 
DB_USERNAME=user 
DB_PASSWORD=******* 
CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

編輯:我沒有到服務器的直接訪問,我只能用FTP & phpMyAdmin的數據庫。

回答

1

您的服務器上沒有數據庫中的表格。您需要使用php artisan migrate命令運行遷移,該命令將爲您創建表。或者,您可以從數據庫轉儲文件恢復服務器上的數據庫數據。

+1

我無法直接訪問服務器,因此無法執行此操作。我會嘗試恢復數據庫(添加問題)。謝謝 –

+0

從.sql文件恢復數據庫日期沒有解決問題,我仍然有同樣的錯誤。另外,我在DB中有表格,因爲如果我沒有登錄網站,我就無法登錄。 –

+0

你想告訴我你有'Formation'表,但仍然得到完全相同的錯誤?如果不是,請檢查phpMyAdmin表名是否與Laravel試圖使用的完全相同。 –

相關問題