0

コントローラーが DELETE 要求をリッスンするのに問題があります。/api/players/1 に DELETE リクエストを送信すると、NotFoundHttpException が発生します。ここに私のroutes.phpがあります

Route::group(array('prefix' => 'api'), function() {

    Route::controller('matches', 'MatchController');
    Route::controller('players', 'PlayerController');
    Route::controller('auth', 'AuthController');

});

私のPlayerController

class PlayerController extends BaseController {

    public function getIndex() {
        // do something... this works
    }

    public function postIndex() {
        // do something... this works
    }

    public function deleteIndex() {
        // works when I send a DELETE request to /api/players
    }

    public function delete($id = null) {
        // doesn't work!
    }
}

ある種の秘密の言葉か何かが欠けていると思います... IDでDELETEリクエストをキャッチする方法がわかりません。私は何を間違っていますか?

4

1 に答える 1

1

わかりました...それで、コントローラーをリソースコントローラーに変更しました...それが正しい方法であるかどうかは完全にはわかりませんが、うまくいくようです!

新しい routes.php:

Route::group(array('prefix' => 'api'), function() {

    Route::resource('matches', 'MatchController');
    Route::resource('players', 'PlayerController');
    Route::resource('auth', 'AuthController');

});

PlayerController.php:

class PlayerController extends BaseController {

    public function index() {
        // GET /api/players
    }

    public function store() {
        // POST /api/players
    }

    public function destroy($id) {
        // DELETE /api/players/{id}
    }
}
于 2013-03-21T21:52:47.960 に答える