2015-10-20 158 views
3

我在组中的获取路线遇到问题。这里是我的代码:Laravel空白页

Route::group(['prefix' => 'commodities'], function(){ 
    Route::get('commodities', [ 
     'as' => 'showCommodities', 'uses' => '[email protected]' 
    ]); 

    Route::get('{id}', [ 
     'as' => 'showCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::get('add', [ 
     'as' => 'addCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('update', [ 
     'as' => 'updateCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('destroy', [ 
     'as' => 'destroyCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('add', [ 
     'as' => 'storeCommodity', 'uses' => '[email protected]' 
    ]); 
}); 

我粘贴在这里CommodityController代码http://pastebin.com/bWrdVhsv

一切正常,除了GET路线commodites/add。我总是得到一个白页。我的调试设置为TRUE,我拥有正确的刀片。

我在这里错过了什么吗?

+1

你能告诉我们你的'CommodityController'吗? – Adrenaxus

+0

@Adrenaxus,更新了我的文章 – FewFlyBy

+0

您确定您在'views/pages/admin/commodity'中有一个名为'add.blade.php'的文件吗? – Adrenaxus

回答

5

的问题是你的路由的顺序。

移动你的包罗万象的{id}路线以上add路线。

Route::group(['prefix' => 'commodities'], function(){ 
    Route::get('commodities', [ 
     'as' => 'showCommodities', 'uses' => '[email protected]' 
    ]); 

    Route::get('add', [ 
     'as' => 'addCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::get('{id}', [ 
     'as' => 'showCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('update', [ 
     'as' => 'updateCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('destroy', [ 
     'as' => 'destroyCommodity', 'uses' => '[email protected]' 
    ]); 

    Route::post('add', [ 
     'as' => 'storeCommodity', 'uses' => '[email protected]' 
    ]); 
}); 

Laravel会从你的routes.php文件顶部到底部。下面的路线本质上是一个捕获所有。

Route::get('{id}', [ 
     'as' => 'showCommodity', 'uses' => '[email protected]' 
]); 

这意味着它将捕获所有GET请求,以符合该模式的网址:

/commodities/some-kind-of-string

作为/commodities/add URI上述模式匹配,因为它第一次出现在路由文件它将使用该路由。

+0

哇!这实际上工作。 – FewFlyBy

+0

好抓!我忽略了那个。 – Adrenaxus

+0

顺便说一下,订单如何影响这一个? – FewFlyBy