删除 Symfony2 表单中的表单命名空间(用于 REST API) [英] Remove form namespace in Symfony2 form (for REST API)
本文介绍了删除 Symfony2 表单中的表单命名空间(用于 REST API)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用 Symfony2 设计 REST API.
I'm designing REST API with Symfony2.
对于 POST 和 PUT 请求,我使用的是 FormType.类似的东西:
For POST and PUT request i'm using a FormType. Something like :
class EmailType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('subject', 'textarea')
[...]
;
}
public function getName()
{
return 'email';
}
}
但是当我 POST 时,我必须传递具有以下名称空间的字段:
But when I POST, i'm must pass fields with a namespace like :
{
"email": {
"subject": "subject"
}
}
但我不想要这个顶级命名空间!
But I don't want this top-level namespace !
有什么想法吗?
推荐答案
我已经将 Symfony 表单用于基于 JSON 的 API.你只需要改变你的 getName()
方法来返回 ''
:
I've used Symfony forms for JSON based APIs. You just need to change your getName()
method to return ''
:
public function getName()
{
return '';
}
这与 FOSRestBundle 相结合,使处理 POSTed 数据变得非常容易.
This, cobined with the FOSRestBundle, made working with POSTed data very easy.
这篇关于删除 Symfony2 表单中的表单命名空间(用于 REST API)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文