3

我有一个具有多个 REST-ful 控制器的 Laravel 3 应用程序。

不带参数的控制器(例如处理 URL 的控制器/api/books)工作正常,但是当我尝试访问带参数的控制器的 URL(例如/api/book/1)时,它不起作用。但是,如果我将方法名称附加到 URL(例如/api/book/index/1),它确实可以正常工作。

有没有办法不需要在控制器上使用关键字“index”?

一个不起作用的控制器的例子——

<?php
class API_Book_Controller extends Base_Controller {

/**
 * Indicates the controller is RESTful
 * @var boolean
 */
public $restful = true;

/**
 * Fetch a book by ID
 * @param  integer $id ID number of the book
 * @return Response    HTTP response
 */
public function get_index($id = null){
    $book = Book::find($id);

    if(is_null($book)){
        return Response::error('404');
    }

    return Response::eloquent($book);
}
4

1 回答 1

1
Route::get('api/book/(:num?)', 'API_Book_Controller@get_index');
于 2013-05-23T00:35:56.370 回答