Laravel 5 路由调用错误视图

Laravel 5 Routing Calling Wrong View

我有一个简单的 Laravel 5 网站正在开发中(学习 Laravel)

我的 'users' 视图上有一个 link 可以添加 'new user':

<a href="{{ url('/user/create') }}">Create New User</a>

我的用户路由如下所示:

Route::get('/users', 'UserController@index');
Route::get('/user/{id}', 'UserController@edit');
Route::get('/user/create', 'UserController@create');
Route::get('/user/update', 'UserController@update');
Route::get('/user/delete/{id}', 'UserController@delete');

我的 UsersController 具有以下内容:

/**
 * Display a listing of the resource.
 *
 * @return Response
 */
public function index()
{
    $users = user::all();
    return view('user.index',compact('users'));
}

/**
 * Show the form for creating a new resource.
 *
 * @return Response
 */
public function create()
{
    $userroles = userrole::all();
    return view('user.create', compact('userroles'));
}

当我点击 link - 我收到以下错误:

Trying to get property of non-object (View: C:\xampp\htdocs\mysite\resources\views\user\edit.blade.php)

我不明白为什么要加载 edit.blade.php

我试过将以下内容放入我的创建视图中,但它仍然没有呈现。

@extends('app')

@section('content')
Test
@endsection

我不确定为什么路由如此奇怪。

有什么想法吗?

在路由文件中将创建(和更新)路由放在编辑路由之前。 Laravel 1st 偶然发现编辑路径并将 create 视为 id。

您可以通过在控制器的编辑方法中执行 dd($id) 来测试它。