【问题标题】:How to make Nelmio ApiDoc annotations pass request method to my forms?如何使 Nelmio ApiDoc 注释将请求方法传递给我的表单?
【发布时间】:2015-04-24 11:55:31
【问题描述】:

我使用动态表单(定义为服务(!))来启用/禁用特定请求(POST/PUT/PATCH)的某些字段。我希望通过将选项传递为described in documentation 来自动显示在 ApiDoc 中。但它不起作用。我用这个:

 * @ApiDoc(
 *  section = "...",
 *  description = "...",
 *  input = {
 *      "class" = "my_form_type_alias",
 *      "options" = {"method" = "PUT"},
 *      "name" = ""
 *  },
 *  statusCodes = {
 *      200 = "Updated (seems to be OK)",
 *      400 = "Bad request (see messages)",
 *      401 = "Unauthorized, you must login first",
 *      404 = "Not found",
 *  }
 * )

但是通过 xdebug 我可以看到 $options['method'] 总是等于 'POST',就像我没有指定 "options" = {​​"method" = "PUT"} 时一样。

【问题讨论】:

    标签: symfony-forms fosrestbundle api-doc


    【解决方案1】:

    目前这已在 Nelmio ApiDoc 中得到修复,并且工作正常。

    【讨论】:

      【解决方案2】:

      您可以尝试在路由中包含请求方法。

      通过正确配置 ApiDoc,方法将显示在 ApiDoc 中。

      在 app/config/routing.yml 中

      # app/config/routing.yml
      app:
          resource: "@AppBundle/Controller/"
          type:     annotation
          requirements:
              _method: POST
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-07-22
        • 2020-08-04
        • 1970-01-01
        • 1970-01-01
        • 2015-11-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多