我有一个具有多个 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);
}