如何限制上传到Archetypes FileField的文件的大小?设置最大。上传文件大小FileField
回答
ATContentTypes registeres一个checkFileMaxSize
验证:
from Products.validation.config import validation
from Products.validation.validators.SupplValidators import MaxSizeValidator
validation.register(MaxSizeValidator('checkFileMaxSize',
maxsize=zconf.ATFile.max_file_size))
其中zconf.ATFile.max_file_size
默认为 “无极限”,但你可以改变,通过复制Products/ATContentTypes/etc/atcontenttypes.conf.in
到$INSTANCE_HOME/etc/atcontentypes.conf
并设置max_file_size
参数:
<archetype ATFile>
# maximum file size in byte, kb or mb
max_file_size 10mb
</archetype>
(中格式也支持gb
,但默认文件不包含在列表中)。
如果您有自定义的文件字段(以上仅适用于默认的原型ATFile架构),您可以重新使用该验证器或创建自己的。为了重复上面的验证,简单地把它添加到validators
属性:
from Products.validation import V_REQUIRED
FileField('yourfilefield',
# ...
validators = (
('isNonEmptyFile', V_REQUIRED),
('checkFileMaxSize', V_REQUIRED)
),
)
要使用你独立配置不同的最大大小,使用ATContentTypes使用相同MaxSizeValidator
,并以新的名称进行注册,然后使用验证程序而不是'checkFileMaxSize'
验证程序;您指定的值是mebibytes(1024个字节)的数量:
from Products.validation.config import validation
from Products.validation.validators.SupplValidators import MaxSizeValidator
validation.register(MaxSizeValidator('checkFileMax50mb', 50))
为了防止资源浪费,如果您在nginx后面运行Plone,可以在将它传递给Plone之前立即检查请求的声明大小。请参阅 http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size 您可能也想要处理nginx中的错误: http://nginx.org/en/docs/http /ngx_http_core_module.html#error_page – 2012-07-11 12:52:08
- 1. 如何设置上传文件的最大大小
- 2. PHP最大上传文件大小
- 3. Plone + Ploneboard最大上传文件大小
- 4. 如何在htaccess中设置上传文件大小来上传大文件?
- 5. 最大上传大小?
- 6. 设置SharedObject最大大小
- 7. 设置最大事件日志大小
- 8. WiredTiger,GridFS和Mongodb上传文件和最大文件大小
- 9. 如何在Linux上设置最大TCP最大段大小?
- 10. 在IIS7/Win7 Pro上增加最大上传文件大小
- 11. 在EditTextPreference中设置最小和最大文本大小
- 12. 上传文件的大小
- 13. 上传文件大小inYii2
- 14. 上传文件大小
- 15. 设置的upload_max_filesize(等)大文件上传
- 16. 如何使用Apache文件上传使用情况根据文件名设置最大文件大小
- 17. 如何在codeigniter中设置最小上传大小
- 18. Yii2最大文件大小
- 19. 最大文件大小PyCharm
- 20. Java最大文件大小
- 21. ASP.NET中的最大文件上传大小错误Razor网站
- 22. 关于IIS中最大文件上传大小的建议
- 23. Adobe flex上传文件的最大大小
- 24. 无法增加本地WordPress的最大上传文件大小
- 25. 如何计算上传大文件的最佳块大小
- 26. web.config中最大文件上传大小更改
- 27. Internet Explorer中最大文件大小上传限制是多少?
- 28. 如何在C++中检查最大文件大小上传?
- 29. php.ini中的最大上传文件大小
- 30. Magento自定义选项上传的最大文件大小?
比使用'isMaxSize'验证其他? – 2012-07-05 15:38:37