Php 断言文件未验证
我已经按照文档中的说明使用条令处理文件上传 图像上载工作正常,但当我上载其他文件类型时,它只允许文件上载,即使我已正确设置$file属性的注释,如下所示:Php 断言文件未验证,php,file,symfony,mime-types,assert,Php,File,Symfony,Mime Types,Assert,我已经按照文档中的说明使用条令处理文件上传 图像上载工作正常,但当我上载其他文件类型时,它只允许文件上载,即使我已正确设置$file属性的注释,如下所示: /** * @Assert\File( * maxSizeMessage = "L'image ne doit pas dépasser 5Mb.", * maxSize = "5000k", * mimeTypes = {"image/jpg", "image/jpeg", "image/gif", "ima
/**
* @Assert\File(
* 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;
{“image/jpg”、“image/jpeg”、“image/gif”、“image/png”},
是有效的json吗?因为对我来说,这看起来不像是有效的json(json中的对象由key=>value对组成)。如果json解码失败,则可能无法应用整个断言。我不知道;但是我不太了解原则,所以我可能错了。是不是{“image/jpg”,“image/jpeg”,“image/gif”,“image/png”},
有效的json?因为对我来说,这看起来不像是有效的json(json中的对象由key=>value对组成)。如果json解码失败,则可能无法应用整个断言。我不知道;虽然我对条令不太了解,但我可能错了。我刚刚发现问题来自产品实体。我将多个图像添加到产品表单中,但我忘记将有效断言放在产品实体的$images属性中,如下所示:
/**
* @ORM\ManyToMany(targetEntity="PS\StockBundle\Entity\Image", cascade={"persist"})
* @Assert\Valid()
*/
private $images;
我在我的博客上写了一篇关于这个的文章
谢谢。我刚刚发现问题来自产品实体。我将多个图像添加到产品表单中,但我忘记将有效断言放在产品实体的$images属性中,如下所示:
/**
* @ORM\ManyToMany(targetEntity="PS\StockBundle\Entity\Image", cascade={"persist"})
* @Assert\Valid()
*/
private $images;
我在我的博客上写了一篇关于这个的文章
谢谢。是的,但它不会触发任何错误。然后您有几个选项1.)一切正常2.)您不运行断言3.)这些都运行了,但您不处理结果。从您迄今为止展示的代码和您迄今为止给出的描述来看,一切都是可能的。因此,这首先需要进一步的故障排除。如何运行/处理断言?这取决于手册中的概述。通常通过实体验证。还有一个可能的问题是你在这里有一个公共财产。谁建议你把它公之于众?这通常不在手册中(您已经编写了手册,您也遵循了手册)。还要检查MimeTypeGuesser是否实际工作。看起来你已经发现它不是。也许这就是你的问题?是的,但它不会触发任何错误。然后你有几个选项1。)一切正常2。)你不运行断言3。)这些都运行了,但你不处理结果。从您迄今为止展示的代码和您迄今为止给出的描述来看,一切都是可能的。因此,这首先需要进一步的故障排除。如何运行/处理断言?这取决于手册中的概述。通常通过实体验证。还有一个可能的问题是你在这里有一个公共财产。谁建议你把它公之于众?这通常不在手册中(您已经编写了手册,您也遵循了手册)。还要检查MimeTypeGuesser是否实际工作。看起来你已经发现它不是。也许这就是你的问题?请查看“文件约束”页面上的。它是
{'string','string'}
。请查看文件约束页面上的。它是{'string','string'}
。这篇文章没有更多内容了吗?你是怎么修好的?这篇文章没有更多内容了?你是怎么修好的?