tornado 之 上传文件
Posted 三人行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tornado 之 上传文件相关的知识,希望对你有一定的参考价值。
一、直接上传
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form method="post" action="/form/" enctype="multipart/form-data"> {% raw xsrf_form_html() %} 名称:<input type="text" name="name"><br> 爱好:<input type="checkbox" name="favor" value="1">水电费 <input type="checkbox" name="favor" value="2">的非官方 <input type="checkbox" name="favor" value="3">发过火 <input type="checkbox" name="favor" value="4">各环节<br> 头像:<input type="file" name="pic"><br> <input type="submit" value="提交"> </form> </body> </html>
服务端:
1 class FormHandler(BaseHandler): 2 def get(self, *args, **kwargs): 3 self.render(‘form.html‘) 4 5 def post(self, *args, **kwargs): 6 name = self.get_argument(‘name‘) 7 favor = self.get_arguments(‘favor‘) 8 pics = self.request.files[‘pic‘] 9 print(‘name=‘,name) 10 print(‘favor=‘,favor) 11 # print(‘pic=‘,pic) 12 for pic in pics: 13 pic_name = pic[‘filename‘] 14 with open(os.path.join(‘static‘,‘img‘,pic_name),‘wb‘) as up: 15 up.write(pic[‘body‘]) 16 self.redirect(‘/form/‘)
以上是关于tornado 之 上传文件的主要内容,如果未能解决你的问题,请参考以下文章
Nine——tornado操作之用户图片上传和展示功能代码的重构(由开始的面向编程的思维方式转变为面向对象的思维方式进行代码的重构!)