Laravel空白页 [英] Laravel Blank white page
问题描述
我的团队中的获取路线有问题.这是我的代码:
I'm having a problem with my get route in a group. here is my code:
Route::group(['prefix' => 'commodities'], function(){
Route::get('commodities', [
'as' => 'showCommodities', 'uses' => 'CommodityController@showAll'
]);
Route::get('{id}', [
'as' => 'showCommodity', 'uses' => 'CommodityController@show'
]);
Route::get('add', [
'as' => 'addCommodity', 'uses' => 'CommodityController@create'
]);
Route::post('update', [
'as' => 'updateCommodity', 'uses' => 'CommodityController@update'
]);
Route::post('destroy', [
'as' => 'destroyCommodity', 'uses' => 'CommodityController@destroy'
]);
Route::post('add', [
'as' => 'storeCommodity', 'uses' => 'CommodityController@store'
]);
});
我将CommodityController
代码粘贴到了 http://pastebin.com/bWrdVhsv
除了GET路由commodites/add
之外,所有其他东西都可以工作.我总是得到白页.我的调试设置为TRUE
,并且具有正确的刀片服务器.
Everything works except the GET route commodites/add
. I always get a white page. My debug is set to TRUE
and I have the correct blade for it.
我在这里想念东西吗?
推荐答案
问题在于您的路线顺序.
The problem is the order of your routes.
将add
路线移到捕获所有{id}
路线的上方.
Move the add
route above your catch all {id}
route.
Route::group(['prefix' => 'commodities'], function(){
Route::get('commodities', [
'as' => 'showCommodities', 'uses' => 'CommodityController@showAll'
]);
Route::get('add', [
'as' => 'addCommodity', 'uses' => 'CommodityController@create'
]);
Route::get('{id}', [
'as' => 'showCommodity', 'uses' => 'CommodityController@show'
]);
Route::post('update', [
'as' => 'updateCommodity', 'uses' => 'CommodityController@update'
]);
Route::post('destroy', [
'as' => 'destroyCommodity', 'uses' => 'CommodityController@destroy'
]);
Route::post('add', [
'as' => 'storeCommodity', 'uses' => 'CommodityController@store'
]);
});
Laravel将自上而下地浏览您的route.php文件.以下路线本质上是万能的.
Laravel will go through your routes.php file top to bottom. The below route is essentially a catch all.
Route::get('{id}', [
'as' => 'showCommodity', 'uses' => 'CommodityController@show'
]);
这意味着它将捕获所有与模式匹配的url的GET请求:
This means it will catch all GET requests to urls that match the pattern:
/commodities/some-kind-of-string
.
由于/commodities/add
uri与上述模式匹配,它将使用该路由,因为它首先出现在路由文件中.
As the /commodities/add
uri matches the above pattern it will use that route because it appears first in the routes file.
这篇关于Laravel空白页的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!