簡體   English   中英

來自控制器的Laravel呼叫路由

[英]Laravel call route from controller

我成功登錄后調用了getting_started路由:

protected $redirectTo = '/getting_started';

這是我的getting_started路線代碼:

Route::get('/getting_started','UserController@getting_started');

和控制器代碼:

public function getting_started()
{
    $id= Auth::id();
    $user = DB::table('user_profiles')->where('user_id', '=', $id)->first();

    if($user->dashboard_access == 0)
    {
        DB::table('user_profiles')
            ->where('user_id', $id)
            ->update(['dashboard_access' => 1]);
        return view('user.getting_started');
    }

    return view('user.dashboard');
}

它完美地工作並在url中顯示:

HTTP://本地主機:8080 / getting_started

現在我真的希望如果user.dashboard視圖被調用它在url中顯示如下:

http:// localhost:8080 / dashboard`

getting_started視圖顯示:

HTTP://本地主機:8080 / getting_started

可以調用儀表板路徑而不是:

  return view('user.dashboard');

我的dashobard路線是:

Route::get('/dashboard',['middleware' => 'auth', function () {
    return view('user.dashboard');
}]);

據我所知,你正在尋找這個功能

return redirect()->route('dashboard');

這是我對你的問題的理解,這可能是錯誤的。 也許你在問別的什么。

這稱為重定向 ,尤其是您希望將重定向返回到命名路由 ,您將路由名為user.dashboard以便您可以使用redirect()->route(route_name)重定向到它:

return redirect()->route('user.dashboard');

希望這可以幫助。

暫無
暫無

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

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