在Laravel中使用单独的控制器显示列表和详细信息

在Laravel中使用单独的控制器显示列表和详细信息,laravel,laravel-5.1,laravel-routing,Laravel,Laravel 5.1,Laravel Routing,我在我的应用程序中使用了以下两个路由,但都失败了。(当我切换位置时,只有一个工作)。请注意,我使用的是两个独立的控制器。对于这样的场景,指定路由的正确方法是什么 Route::controller('schedulers', 'SchedulersController', [ 'getIndex' => 'schedulers.index', 'getUpdate' => 'schedulers.edit' ]); Route::controller('sched

我在我的应用程序中使用了以下两个路由,但都失败了。(当我切换位置时,只有一个工作)。请注意,我使用的是两个独立的控制器。对于这样的场景,指定路由的正确方法是什么

Route::controller('schedulers', 'SchedulersController', [
    'getIndex' => 'schedulers.index',
    'getUpdate' => 'schedulers.edit'
]);


Route::controller('schedulers/{schedulerId}', 'ReportsController', [
    'getIndex' => 'schedulers.reports',
]);
尝试删除用户资源(routes.php):

在此之后,使用两种方法创建SchedulersController:显示、索引:

<?php

namespace App\Http\Controllers;

class SchedulersController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        //
    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
        //
    }
}

您可以添加路由前缀

例如:

Route::group(['prefix' => 'schedulers'], function() {   

    Route::controller('/{schedulerId}', 'ReportersController', [
        'getIndex' => 'schedulers.reports',
    ]);

    Route::controller('/', 'SchedulersController', [
        'getIndex' => 'schedulers.index',
        'getUpdate' => 'schedulers.edit'
    ]);
});
Route::group(['prefix' => 'schedulers'], function() {   

    Route::controller('/{schedulerId}', 'ReportersController', [
        'getIndex' => 'schedulers.reports',
    ]);

    Route::controller('/', 'SchedulersController', [
        'getIndex' => 'schedulers.index',
        'getUpdate' => 'schedulers.edit'
    ]);
});