如何使 Nelmio ApiDoc 注释将请求方法传递给我的表单?
How to make Nelmio ApiDoc annotations pass request method to my forms?
我使用动态表单(定义为服务 (!))来 enable/disable 某些特定请求的字段 (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"}.
目前这已在 Nelmio ApiDoc 中修复并且工作正常。
您可以尝试在路由中包含请求方法。
通过正确配置 ApiDoc,方法将显示在 ApiDoc 中。
即
在app/config/routing.yml
# app/config/routing.yml
app:
resource: "@AppBundle/Controller/"
type: annotation
requirements:
_method: POST
我使用动态表单(定义为服务 (!))来 enable/disable 某些特定请求的字段 (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"}.
目前这已在 Nelmio ApiDoc 中修复并且工作正常。
您可以尝试在路由中包含请求方法。
通过正确配置 ApiDoc,方法将显示在 ApiDoc 中。
即
在app/config/routing.yml
# app/config/routing.yml
app:
resource: "@AppBundle/Controller/"
type: annotation
requirements:
_method: POST