Laravel5将不匹配route edit_user / {id}

时间:2015-06-16 20:59:32

标签: laravel routing laravel-5 laravel-routing

请你帮我一下吗?

我在Laravel5中有这条路线:

Route::get('edit_user/{userId}', [
    'as' => 'editUser',
    'uses' => 'Auth\UserController@editUser'
]);

但是当我尝试访问网址.../edit_user/19时,它将无法匹配并将我重定向到/home网址...

无论如何,当我使用它时:

Route::get('edit_user/{userId}', [
    'as' => 'editUser',
    function($userId) {
        die($userId);
}
]);

返回19

这也是我的功能:

public function editUser($userId) {
    die($userId);
}

这也是我的控制器的一部分:

<?php namespace App\Http\Controllers\Auth;


use App\Models\User;

use Auth;
use Hash;
use Mail;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;


class UserController extends Controller {

    /**
     *
     * @return void
     */
    public function __construct()
    {

        $this->middleware('guest', ['except' => 'logout']);
    }


    /**
     *
     * show edit user form
     *
     * @param $id
     */

    public function editUser($userId) {
        die($userId);
    }

你知道吗,哪里可能有问题?

非常感谢你的意见。

修改

我找到解决方案 - &gt;需要在__construct中编辑auth的异常。

1 个答案:

答案 0 :(得分:1)

这应该与提供的代码一起使用。

检查以下项目:

<强> 1。您是否在UsersController的__construct中有此代码?

public function __construct()
{
    $this->middleware('auth');
}

如果是这样,您需要滞后来编辑用户。

<强> 2。在edit_user/{userId}之前是否列出了覆盖此路线的路线。

尝试将其移动为第一条路线。

第3。你的UserController是否正确命名空间?

<?php 
namespace App\Http\Controllers\Auth;