2016-04-01 19 views
0

我是laravel應用程序開發中的新手。當我使用authmiddleware時,對於未註冊的用戶(重定向到登錄頁面)可以正常工作。但是當登錄用戶要去訪問那個頁面,然後將其重定向到主頁面(根目錄)。當使用auth中間件時,它將我重定向到主頁

從routes.php文件的代碼路徑下面是

Route::group(['middleware' => 'auth'], function() { 
    Route::resource('/edit', '[email protected]'); 
}); 

下面我userController.php代碼

<?php 
namespace App\Http\Controllers; 
use Illuminate\Http\Request; 
use App\Http\Requests; 
use App\allUsers; 
class userController extends Controller 
{ 
    public function index(){ 
    } 

    public function show($id){ 
    } 

    public function edit(){ 
     return view('auth.user_edit'); 
    } 
    } 

下面我authController代碼

<?php 

namespace App\Http\Controllers\Auth; 

use App\User; 
use Validator; 
use App\Http\Controllers\Controller; 
use Illuminate\Foundation\Auth\ThrottlesLogins; 
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers; 

class AuthController extends Controller 
{ 
/* 
    |-------------------------------------------------------------------------- 
| Registration & Login Controller 
|-------------------------------------------------------------------------- 
| 
| This controller handles the registration of new users, as well as the 
| authentication of existing users. By default, this controller uses 
| a simple trait to add these behaviors. Why don't you explore it? 
| 
*/ 

use AuthenticatesAndRegistersUsers, ThrottlesLogins; 

/** 
* Where to redirect users after login/registration. 
* 
* @var string 
*/ 
protected $redirectTo = '/dashboard'; 

/** 
* Create a new authentication controller instance. 
* 
* @return void 
*/ 
public function __construct() 
{ 
    $this->middleware($this->guestMiddleware(), ['except' => 'logout']); 
} 

/** 
* Get a validator for an incoming registration request. 
* 
* @param array $data 
* @return \Illuminate\Contracts\Validation\Validator 
*/ 
protected function validator(array $data) 
{ 
    return Validator::make($data, [ 
     'name' => 'required|max:255', 
     'email' => 'required|email|max:255|unique:users', 
     'password' => 'required|min:6|confirmed', 
    ]); 
} 

/** 
* Create a new user instance after a valid registration. 
* 
* @param array $data 
* @return User 
*/ 
protected function create(array $data) 
{ 
    return User::create([ 
     'name' => $data['name'], 
     'email' => $data['email'], 
     'password' => bcrypt($data['password']), 
    ]); 
} 
} 

任何人幫助我,請。

回答

0

可以覆蓋$ redirectTo變量在AuthController:

/** 
* Where to redirect users after login/registration. 
* 
* @var string 
*/ 
protected $redirectTo = '/dashboard'; 

更新:

試着改變你的路線:

Route::group(['middleware' => 'auth'], function() { 
    Route::get('edit', '[email protected]'); 
}); 

路線::資源創建所有CRUD路線爲你自動。

https://laravel.com/docs/5.1/controllers#restful-resource-controllers

+0

對不起maximl337,它不工作。 –

+0

您可以在問題 –

+0

中發佈您的身份驗證控制器請立即檢查。更新!! –

0

是問題解決了。只是改變了路線

Route::group(['middleware' => ['web', 'auth']], function() { 
    Route::get('/edit', '[email protected]'); 
}); 
相關問題