image() 将图片上传到upload下的的指定目录,必须是严格的图片文件。
以下是 image() 的语法:
image(dir='article')
● dir [str]:文件保存目录名,位于 /upload/ 目录下的一个目录名,不会自动创建。
返回一个字典。
以下展示了使用 image() 的简单实例:
from kyger.upload import Upload file = self.kg['post'].get('fileField', {'data': ''}) # 会在/upload/product目录新建一个年月格式的文件夹:'{yy}{mm}',然后将文件命名为:'{yy}{mm}{dd}{hh}{ii}{ss}{rand}'加后缀名的格式。 return Upload(file, self.db, self.kg).image('product')
以上实例运行后输出的结果为:
{'state': 'FAILURE', 'msg': ''} # 失败时返回 msg 错误消息 # 成功时返回url/新的文件-名/文件大小M/文件类型后缀 {'state': 'SUCCESS', 'url': '/upload/product/201909/20190902152940006.png', 'filename': '20190902152940006.png', 'size': 0.07, 'type': '.png', 'loginid': ''}以下展示了使用 image() 的详细实例:
image = self.kg['post'].get('image', '') # 获取图片数据 from kyger.upload import Upload up = Upload(image, self.db, self.kg) # 创建实例 # 子目录及文件名中可用变量:{y}:两位年 {yy}:四位年 {mm}:两位月 {dd}:两位日 {hh}:两位小时 {ii}:两位分钟 {ss}:两位秒 {time}:时间戳 {rand}:三位随机数 up.path = 'category/{yy}{mm}' # 文件存放路径 up.filename = '{y}{mm}{dd}{hh}{ii}{ss}' # 文件命名规则 up.exist_rename = True # 文件名存在是否自动重命名。命名规则:*(1).* up.upload_log = True # 开启日志 up.image('product') # 上传到upload/product
以上实例运行后输出的结果为:
{'state': 'FAILURE', 'msg': ''} # 失败时返回 msg 错误消息 # 成功时返回url/新的文件-名/文件大小M/文件类型后缀 {'state': 'SUCCESS', 'url': '/upload/product/category/201909/190902152940.png', 'filename': '190902152940.png', 'size': 0.07, 'type': '.png', 'loginid': ''}