Assert文件未验证



我已经按照文档中的说明使用Doctrine处理文件上传。

图片上传工作正常但当我上传其他文件类型时,它只允许文件上传即使我在$file属性上正确设置了注释,像这样

/**
 * @AssertFile(
 *     maxSizeMessage = "L'image ne doit pas dépasser 5Mb.",
 *     maxSize = "5000k",
 *     mimeTypes = {"image/jpg", "image/jpeg", "image/gif", "image/png"},
 *     mimeTypesMessage = "Les images doivent être au format JPG, GIF ou PNG."
 * )
 */
public $file;

我刚刚发现问题来自Product实体。我正在向产品表单添加多个图像,我忘记将Valid断言放在产品实体上的$images属性上,如下所示:

/**
 * @ORMManyToMany(targetEntity="PSStockBundleEntityImage", cascade={"persist"})
 * @AssertValid()
 */
private $images;

我在我的博客上写了一篇关于这个的文章https://web.archive.org/web/20141004165731/http://www.ennazk.com:80/validate-subforms-in-symfony2/#.Wdt9mBNSwnU

谢谢。

{"image/jpg", "image/jpeg", "image/gif", "image/png"},是否合法?因为对我来说,这看起来不像一个有效的json (json中的对象由键=>值对组成)。如果json解码失败,那么整个断言可能没有得到应用。我对学说了解不多,所以我可能是错的。

相关内容

  • 没有找到相关文章

最新更新