FosRestBundle 不允许的方法

Method Not Allowed with FosRestBundle

我有一个 API,其中有一些控制器用于各自的实体。它们具有相同的结构,但其中一个在尝试删除值时出现此错误。

No route found for "DELETE /api/categories/4": Method Not Allowed (Allow: GET, HEAD, PUT)

但是我创建了删除操作!在其他控制器中,使用相同的代码,它工作正常。

删除操作:

/**     
 * @return array  
 * @Rest\Delete("/categories/{id}")      
 * @Rest\View(statusCode=204)
 * @Method({"DELETE"})       
 */
public function deleteCategoryAction($id)
{
    $em = $this->getDoctrine()->getManager(); 
    $category = $em->getRepository('CASEventBundle:Category')->find($id);

    $em->remove($category);
    $em->flush();

    return new View("deleted successfully", Response::HTTP_OK);
}

路由文件:

category:
    type: rest
    resource: CAS\APIRestBundle\Controller\CategoryController

我不确定,但尝试在路线

中使用 methods
category:
    type: rest
    resource: CAS\APIRestBundle\Controller\CategoryController
    methods: [DELETE]

Ref Here

我已经解决了。这是一个在其他文件中重复的 class 名称。