Laravel 5.2到5.3-将routes.php转换为web和api路由文件?

Laravel 5.2到5.3-将routes.php转换为web和api路由文件?,laravel,laravel-5,laravel-5.3,Laravel,Laravel 5,Laravel 5.3,我正在将我的吉他课程网站从5.2升级到5.3。我以前的开发者有一份全职工作,所以现在我是网站的所有者和开发者。。。我是一个比开发者更好的吉他手 我的网站有一个添加吉他课程内容的后端。除其他外,routes.php文件有以下几行: function RegisterResourceRoute($route, $name) { Route::get($route, 'Api\\'.$name.'Controller@getAll'); Route::get(

我正在将我的吉他课程网站从5.2升级到5.3。我以前的开发者有一份全职工作,所以现在我是网站的所有者和开发者。。。我是一个比开发者更好的吉他手

我的网站有一个添加吉他课程内容的后端。除其他外,routes.php文件有以下几行:

function RegisterResourceRoute($route, $name) {
    Route::get($route,              'Api\\'.$name.'Controller@getAll');
    Route::get($route.'/{id}',      'Api\\'.$name.'Controller@get');
    Route::post($route,             'Api\\'.$name.'Controller@post');
    Route::put($route.'/{id}',      'Api\\'.$name.'Controller@put');
    Route::delete($route.'/{id}',   'Api\\'.$name.'Controller@delete');
}

// Api
Route::group(['middleware' => ['api', 'auth', 'admin']], function () {
    Route::group(array('prefix' => 'api'), function() {
        RegisterResourceRoute('file', 'File');
        RegisterResourceRoute('photo', 'Photo');
        RegisterResourceRoute('category', 'Category');
        RegisterResourceRoute('tag', 'Tag');
        RegisterResourceRoute('lesson', 'Lesson');
        RegisterResourceRoute('exercise', 'Exercise');
        RegisterResourceRoute('user', 'User');
    });
    Route::post('/api/email', 'Api\\EmailController@send');

});
然后我在视图中使用的角度相关js中看到,这是用于练习资源的:

// Exercise
        .when('/exercise', {
            templateUrl: 'views/dashboard/exercise/view-all.html',
            controller: 'ExerciseViewAllController'
        })
        .when('/exercise/create/:lessonId?', {
            templateUrl: 'views/dashboard/exercise/create.html',
            controller: 'ExerciseCreateController'
        })
        .when('/exercise/view/:id', {
            templateUrl: 'views/dashboard/exercise/view.html',
            controller: 'ExerciseViewController'
        })
        .when('/exercise/edit/:id', {
            templateUrl: 'views/dashboard/exercise/edit.html',
            controller: 'ExerciseEditController'
        })
        .when('/exercise/edit/:id/details', {
            templateUrl: 'views/dashboard/exercise/edit-details.html',
            controller: 'ExerciseDetailsController'
        })
        .when('/exercise/edit/:id/photos', {
            templateUrl: 'views/dashboard/exercise/edit-photos.html',
            controller: 'ExercisePhotosController'
        })
        .when('/exercise/delete/:id', {
            templateUrl: 'views/dashboard/exercise/delete.html',
            controller: 'ExerciseDeleteController'
        })
例如,ViewAllController如下所示:

angular.module('dashboard')
    .controller('ExerciseViewAllController', ['$scope', '$http', function ($scope, $http) {
        $scope.exercises = [];

        $scope.refresh = function () {
            $scope.exercises = [];
            load();
        };

        var load = function () {
            $scope.busy = true;
            $http.get('/api/exercise').then(function (response) {
                $scope.busy = false;
                $scope.exercises = response.data;
            }, function (response) {
                $scope.busy = false;
            });
        };

        load();
    }]);
我试图弄清楚5.3是如何处理这种路由的。例如,在我的后端仪表板中,当我尝试查看练习列表时,api/练习出现404错误

因此,我在admin routes下创建了web.php:

Route::resource('api/exercise', 'Api\ExerciseController');
在api.php中

Route::group(['prefix' => 'api'], function () { Route::resource('exercise', 'Api\ExerciseController'); });
它现在可以工作了,但我必须将以前在练习控制器中的getAll()函数更改为index(),否则会出现错误,因为laravel正在寻找默认的index方法

我宁愿使用默认的路由名称来工作,而且我也不知道我添加到web.php和api.php中的方法是否正确。我看到事情似乎在起作用,但我担心我看不到全局

有人能解释一下我将如何让这些路线以真正的laravel 5.3方式工作吗


谢谢

记不清了,但我通过这个链接从5.2升级到了5.3 不要被内容淹没。只需搜索从中获得错误的位。例如,路由部分。
希望这有助于

记不清确切内容,但我通过此链接从5.2升级到了5.3 不要被内容淹没。只需搜索从中获得错误的位。例如,路由部分。
希望有帮助

您可以使用我的电子邮件与我联系:kamgasimojunior@gmail.com我是一名laravel开发人员。您可以使用我的电子邮件与我联系:kamgasimojunior@gmail.com我是一名laravel开发者。