2016-11-06 71 views
2

我遇到了路線返回空白頁的問題。我使用Homestead作爲我的開發環境,我不確定如何調試。Laravel僅在特定路線上返回空白頁

當我訪問白頁時,/storage/logs/laravel ...沒有返回任何異常。

web.php(其中它的失敗):

Route::get('/clinic/register', '[email protected]'); 

Controller.php這樣:

public function register() 
{ 
    return view('clinic.register', ['specialisms' => Specialism::pluck('specialism', 'id')]); 
} 

然而,當我訪問/clinic/register我看到了一個空白頁。我怎麼知道它爲什麼失敗?當然,白頁會在某處返回異常?

+0

是您選擇視圖名稱和路徑爲'資源\意見\診所\ register.blade.php'?如果是,請顯示此視圖。 –

+0

是的,那是視圖所在。我目前只有'

hello

'。 – Ben

+0

你的代碼看起來沒問題。試着用'php artisan view:clear'清除視圖緩存' –

回答

3

由於您尚未提供整個路線設置。這個答案是我最好的猜測。看看它是否有幫助。

您的問題提示不正確的路線設置。如果您已經創建了診所資源,則診所/寄存器應在其之前。

// clinic/register route should come first 
Route::get('clinic/register','[email protected]'); 

// followed by rest of the routes which resource will create 
Route::resource('clinic','ClinicController'); 

獲得空白頁面的原因是因爲Route :: resource會創建一些帶有通配符的路由。 例如診所/ {診所}將映射到控制器上顯示方法。所以當你向獲取請求時,診所/寄存器將它映射到這個顯示方法而不是你的寄存器方法。

沒有出現任何錯誤的一種可能性是您的顯示方法還沒有任何代碼。因此,一個空白的迴應。

總結:在您註冊的路線順序是有意義的

+0

你是對的。我在頂部有一個Route :: get('/'),非常感謝! – Ben