image() 將圖片上傳到upload下的的指定目錄,必須是嚴(yán)格的圖片文件。
以下是 image() 的語(yǔ)法:
image(dir='article')
● dir [str]:文件保存目錄名,位于 /upload/ 目錄下的一個(gè)目錄名,不會(huì)自動(dòng)創(chuàng)建。
返回一個(gè)字典。
以下展示了使用 image() 的簡(jiǎn)單實(shí)例:
from kyger.upload import Upload file = self.kg['post'].get('fileField', {'data': ''}) # 會(huì)在/upload/product目錄新建一個(gè)年月格式的文件夾:'{yy}{mm}',然后將文件命名為:'{yy}{mm}{dd}{hh}{ii}{ss}{rand}'加后綴名的格式。 return Upload(file, self.db, self.kg).image('product')
以上實(shí)例運(yùn)行后輸出的結(jié)果為:
{'state': 'FAILURE', 'msg': ''} # 失敗時(shí)返回 msg 錯(cuò)誤消息 # 成功時(shí)返回url/新的文件-名/文件大小M/文件類型后綴 {'state': 'SUCCESS', 'url': '/upload/product/201909/20190902152940006.png', 'filename': '20190902152940006.png', 'size': 0.07, 'type': '.png', 'loginid': ''}以下展示了使用 image() 的詳細(xì)實(shí)例:
image = self.kg['post'].get('image', '') # 獲取圖片數(shù)據(jù) from kyger.upload import Upload up = Upload(image, self.db, self.kg) # 創(chuàng)建實(shí)例 # 子目錄及文件名中可用變量:{y}:兩位年 {yy}:四位年 {mm}:兩位月 {dd}:兩位日 {hh}:兩位小時(shí) {ii}:兩位分鐘 {ss}:兩位秒 {time}:時(shí)間戳 {rand}:三位隨機(jī)數(shù) up.path = 'category/{yy}{mm}' # 文件存放路徑 up.filename = '{y}{mm}{dd}{hh}{ii}{ss}' # 文件命名規(guī)則 up.exist_rename = True # 文件名存在是否自動(dòng)重命名。命名規(guī)則:*(1).* up.upload_log = True # 開啟日志 up.image('product') # 上傳到upload/product
以上實(shí)例運(yùn)行后輸出的結(jié)果為:
{'state': 'FAILURE', 'msg': ''} # 失敗時(shí)返回 msg 錯(cuò)誤消息 # 成功時(shí)返回url/新的文件-名/文件大小M/文件類型后綴 {'state': 'SUCCESS', 'url': '/upload/product/category/201909/190902152940.png', 'filename': '190902152940.png', 'size': 0.07, 'type': '.png', 'loginid': ''}