【发布时间】:2011-10-27 03:23:29
【问题描述】:
我正在尝试在 Symfony 中设计一个 RESTful 接口,它将通过 AJAX 请求调用。我遇到了一个问题,我的 POST 方法路由与内置重定向控制器匹配,而不是我在下面创建的:
/**
* @Route("/todos")
*/
class TodoController extends Controller
{
/**
* @Route("/", name="todos")
* @Method("GET")
*/
public function indexAction()
{
// Get action here
}
/**
* @Route("/{id}", name="todo_delete")
* @Method("DELETE")
*/
public function deleteAction($id)
{
// Delete action here
}
/**
* @Route("/", name="todo_create")
* @Method({"POST"})
*/
public function createAction()
{
return new Response("Hello!");
}
}
我的 indexAction 和 deleteAction 工作正常,但我的 createAction 没有。当我查看日志时,我看到的是:
[2011-10-24 19:27:14] request.INFO: Matched route "todo_create" (parameters: "_controller": "Symfony\Bundle\FrameworkBundle\Controller\RedirectController::urlRedirectAction", "path": "/todos/", "permanent": "true", "scheme": "null", "httpPort": "80", "httpsPort": "443", "_route": "todo_create") [] []
看起来我的路线甚至没有与我创建的 TodoController 相关联。知道是什么原因造成的吗?
【问题讨论】:
标签: symfony