2016-11-26 159 views
1

你好我正在使用Laravel 5.2版本。我通過作曲家安裝了laravel項目。之後,我使用命令「php artisan make:auth」創建auth。創建驗證路由後,會生成例如http://localhost:8000/login。現在我不想要這條路線,我想設置不同的路線,例如http://localhost:8000/super/admin。那麼如何將http://localhost:8000/login更改爲http://localhost:8000/super/admin。當時間驗證生成/註冊路由是創建,使我想要刪除的路線http://localhost:8000/register路線。請告訴我如何做到這一點。 在此先感謝。如何更改Laravel 5.2更改登錄路徑?

回答

2

遵循以下簡單步驟

如果您在routes.phpRoute::auth(),那麼請刪除了這一行。

現在以下行添加到您的routes.php

Route::get('super/admin', 'Auth\[email protected]')->name('auth.login.get'); 
Route::post('super/admin', 'Auth\[email protected]')->name('auth.login.post'); 
Route::get('super/admin/logout', 'Auth\[email protected]')->name('auth.logout.get'); 

然後去login.blade.php

(在資源 - >則須─>權威性最有可能),並更改表單動作{{ route('auth.login.post') }},像這...

<form action="{{ route('auth.login.post') }}" method="post"> 

希望這回答一切:)

+0

如果我在我的routes.php中刪除Route :: auth()所以所有控制器我的身份驗證工作與否。刪除Route :: auth()後,我必須爲我的項目創建自定義身份驗證? –

+0

@dhanashri我也加了註銷路線。不,你不必使用自定義Auth ...在這裏使用'php artisan make:auth'之後創建的AuthController ....現在不需要任何東西。一切應該按預期工作...並且註冊鏈接也將無法工作:) – prateekkathal

+0

非常感謝你:) –

0

App\Http\Controllers\Auth\LoginController - 定義名爲showLoginForm()一機能的研究爲:

public function showLoginForm() 
{ 
    $view = property_exists($this, 'loginView') 
     ? $this->loginView : 'auth.authenticate'; 

    if (view()->exists($view)) { 
     return view($view); 
    } 
    return view('auth.login'); 
} 

它覆蓋在性狀中定義的功能showLoginForm Illuminate\Foundation\Auth\AuthenticatesUsers.

注意:在Laravel 5.3功能名稱從getLogin改變showLoginForm。 詳情轉到 Illuminate\Foundation\Auth\AuthenticatesUsers.

0

在routes文件,而不是使用默認的Route::auth(),你必須自己註冊的路由。我的建議是運行php artisan route:list。這將顯示默認路由及其各自的控制器(和方法)。然後,刪除Route::auth()並手動實施您想要的路線。

因此,舉例來說,如果你想改變登錄網址,你必須把它定義爲: Route::get('super/admin', 'App\Http\Controllers\Auth\[email protected]');

這樣做對所有要替換的路由。通過刪除Route::auth(),您將刪除註冊路由。

+0

如果我刪除Route :: auth()然後所有項目我必須創建自定義auth? –

+0

不,只需參考現有的控制器。例如,所有的'Route :: auth()'都是聲明'Route :: get('login','App \ Http \ Controllers \ Auth \ AuthController @ showLoginForm');'爲你。通過刪除它,並明確 –