簡體   English   中英

在Laravel中路由-錯誤404

[英]Routing in laravel - error 404

我對路由頁面和實現有疑問。 當頁面路由在實現之前時,頁面就起作用,實現不起作用。 同樣...當實現路由在頁面路由之前時,實現有效,頁面不起作用。 顯示錯誤404。

我的路由頁面:

Route::get('{page}/{subs?}', ['uses' => 'PagesController@getPage'])
    ->where(['page' => '^((?!admin).)*$', 'subs' => '.*']);

我的路由實現:

Route::group(['middleware' => ['web']], function () {
    Route::get('realizacje/{slug}', 'PagesController@getRealization')
        ->where('slug', '[\w\d\-\_]+');
});

我的控制器PagesController:

public function getPage($slug){
    $realizations = Realization::orderBy('id', 'desc')->get();

    $page = Page::findBySlug($slug);
    if (!$page)
    {
        abort(404, 'Please go back to our <a href="'.url('').'">homepage</a>.');
    }

    $this->data['title'] = $page->title;

    $metatag = $page->extras;
    $metatag = json_decode($metatag, true);


    $this->data['page'] = $page->withFakes();
    return view('pages.templates.'.$page->template, $this->data)
    ->with('metatag',$metatag)
    ->with('realizations',$realizations);
}

public function getRealization($slug){

    $realization = Realization::where('slug', '=', $slug)->first();
    $realizations = Realization::orderBy('id', 'desc')->get();
    return view('pages.templates.'.$realization->template)

    ->with('realizations',$realizations);

}

第一件事:我不了解Laravel。 我在Symfony開發。

但是也許可以幫上忙。

問題可能出在您的路線URI定義中:

Route::get('{page}/{subs?}'...

Route::get('realizacje/{slug}'...

也許嘗試像這樣修改您的頁面URI,以使路由器無法匹配這兩個操作:

Route::get('pages/{page}/{subs?}'...
Route::get('realizacje/{slug}'...

或嘗試修改where()條件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM