gpt4 book ai didi

rest - FOSRestBundle Camel 键规范化器不起作用

转载 作者:行者123 更新时间:2023-12-03 10:16:28 24 4
gpt4 key购买 nike

这是我的配置文件:

// app/config/config.yml
fos_rest:
body_listener:
array_normalizer: fos_rest.normalizer.camel_keys

我正在使用最新版本的 FOSRestBundle:
// composer.json
"friendsofsymfony/rest-bundle": "dev-master"

这些是我的帖子参数:
// Post parameters
"first_name": "First name",
"last_name": "Last name",
"phone": "Phone"

这是我的 Controller :
/**
* @ApiDoc(
* resource=true,
* description="Create a new user"
* )
*
* @View()
*/
public function postAction(Request $request)
{
$user = new User();
$form = $this->createForm(new UserType(), $user);

// Request post parameters are not camel cased
// Parameters expected: firstName, lastName, phone
// Parameters got: first_name, last_name, phone
$form->handleRequest($request);

if ($form->isValid()) {
return 'valid';
}

return $user;
}

问题:

请求发布参数不是驼峰式的。我得到的是名字、姓氏、电话而不是名字、姓氏、电话。我和 https://florian.voutzinos.com/blog/handling-camelcase-with-fosrestbundle/ 一样.但是,它没有用。我错过了什么吗?有任何想法吗?谢谢。

最佳答案

这是重命名您的字段名称的 JMSSerializer。尝试改变它的命名策略。把它放到你的服务配置文件中

XML

<services>
<service id="jms_serializer.naming_strategy" class="JMS\Serializer\Naming\IdenticalPropertyNamingStrategy" />
</services>

YML
services:
jms_serializer.naming_strategy:
class: 'JMS\Serializer\Naming\IdenticalPropertyNamingStrategy'

关于rest - FOSRestBundle Camel 键规范化器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25794050/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com