Symfony2:如何上传没有条令的文件?
我使用Symfony2.3。我有一张这样的表格:Symfony2:如何上传没有条令的文件?,symfony,symfony-2.3,Symfony,Symfony 2.3,我使用Symfony2.3。我有一张这样的表格: <form action="{{ path("member_update") }}" method="post" {{ form_enctype(form) }}> {{ form_widget(form.pic) }} ... {{ form_widget(form._token) }} </form> 它必须工作,但我看到这个错误: Exception: Serialization of 'S
<form action="{{ path("member_update") }}" method="post" {{ form_enctype(form) }}>
{{ form_widget(form.pic) }}
...
{{ form_widget(form._token) }}
</form>
它必须工作,但我看到这个错误:
Exception: Serialization of 'Symfony\Component\HttpFoundation\File\UploadedFile' is not allowed
1. in pathToMyProject...\vendor\symfony\symfony\src\Symfony\Component\HttpKernel\DataCollector\DataCollector.php line 27
2. at serialize(.....
有什么问题吗 问题解决了!我在MemberType中更改此行:
$builder->add('pic','file');
为此:
$builder->add('pic','file', array('mapped'=>false));
我的错误是,我必须解释“pic”字段没有映射到实体(或Mongo中的文档,作为我的项目)。否则Symfony内核会尝试将“pic”的值放在实体的字段中。我没有任何字段保存文件!我将图片上传到一个目录中,并且只存储实体中图片的路径。当我改变这一点时,问题很容易就解决了!:-)
因此,请记住向Symfony清楚地解释所有事情
$builder->add('pic','file', array('mapped'=>false));