首页 > 解决方案 > No route found for POST ... : Method Not Allowed (Allow: PUT)

问题描述

目前,我正在更新在现有 Symfony 2.3(当前为 3.0.9)上运行的系统,并检查运行情况。
当我尝试将项目的状态更改为选定状态时,出现错误。
您对确定案件有什么建议吗?

错误代码

No route found for "POST /admin/hq/article/3999/articleStatus": 
Method Not Allowed (Allow: PUT)

代码

文章控制器.php

    /**
     * Article status change
     *
     * @Method("PUT")
     * @Route("/article/{ids}/articleStatus")
     * @Secure(roles="ROLE_HQ_MANAGE")
     */
    public function updateArticleStatusAction(Request $request, $ids)
    {
        return parent::updateArticleStatusAction($request, $ids);
    }

版本

CentOS 6.7
PHP 5.6
Symfony3.0.9

标签: phpsymfonysymfony3.x

解决方案


我猜您正在使用网络浏览器提交表单,并且该操作/admin/hq/article/3999/articleStatus 只允许 PUT 操作(因为@Method("PUT")注释)。使用浏览器提交表单是一个 POST 操作。将该行更改为@Method("POST"),您应该没问题。


推荐阅读