Laravel 4 路由重映射Laravel 4

Laravel 4 路由重映射Laravel 4,laravel-4,Laravel 4,我正在使用Laravel4,我正在尝试创建一个cms页面,其URL看起来像:domain.tld/en/它是如何工作的。它们是使用后台创建的,我使用slug工作原理和当前语言获取它们。问题是,如果我想访问domain.tld/login(这是一个静态页面),它会显示一个404页面,当然,因为数据库中找不到该页面。所以我在寻找一个解决方案,如果没有找到给定的段塞,它会在其他路径中查找 请帮忙 对不起我的英语 这是我的routes.php文件 $languages = array('fr', 'en

我正在使用Laravel4,我正在尝试创建一个cms页面,其URL看起来像:
domain.tld/en/它是如何工作的
。它们是使用后台创建的,我使用slug
工作原理和当前语言获取它们。问题是,如果我想访问
domain.tld/login
(这是一个静态页面),它会显示一个404页面,当然,因为数据库中找不到该页面。所以我在寻找一个解决方案,如果没有找到给定的段塞,它会在其他路径中查找

请帮忙

对不起我的英语

这是我的routes.php文件

$languages = array('fr', 'en');
$locale = Request::segment(1);
if(in_array($locale, $languages)){
\App::setLocale($locale);
}else{
$locale = null;
}

 Route::group(array('prefix' => $locale), function()
 {


  Route::get('/', array('before' => 'loginCookie',  'uses' => 'HomeController@getIndex', 'as' => '/'));

Route::get('{slug}',array('uses' => 'ArticleController@getArticle', 'as' => 'articles.show'));

  Route::group(array('prefix' => 'login'), function() {
        Route::get('/',  array('before' => 'guest', 'after' => 'reflashPool', 'uses' => 'UserController@getLogin'));
        Route::post('/',array('before' => 'guest|csrf','after' => 'reflashPool', 'uses' => 'UserController@postLogin'));
        Route::get('remind-password',array('uses' => 'UserController@getRemind'));
        Route::post('remind-password','UserController@postRemind');
        Route::get('reset-password/{token}','UserController@getReset');
        Route::post('reset-password','UserController@postReset');
    });

为了尽可能快,Laravel按照您编写的顺序处理路由,第一个满足要求的路由就是它选择的路由

因此,您只需将最通用的路线设置为最后一条:

 Route::group(array('prefix' => $locale), function()
 {

    Route::get('/', array('before' => 'loginCookie',  'uses' => 'HomeController@getIndex', 'as' => '/'));

    Route::group(array('prefix' => 'login'), function() {
        Route::get('/',  array('before' => 'guest', 'after' => 'reflashPool', 'uses' => 'UserController@getLogin'));
        Route::post('/',array('before' => 'guest|csrf','after' => 'reflashPool', 'uses' => 'UserController@postLogin'));
        Route::get('remind-password',array('uses' => 'UserController@getRemind'));
        Route::post('remind-password','UserController@postRemind');
        Route::get('reset-password/{token}','UserController@getReset');
        Route::post('reset-password','UserController@postReset');
    });

    Route::get('{slug}',array('uses' => 'ArticleController@getArticle', 'as' => 'articles.show'));

});

发布您的路由文件?我有一个问题,假设我使用两个表(两个控制器),如果第一个失败,我如何搜索第二个?