Django Filefield 保存用户上传文件

Django Filefield 保存用户上传文件

网上关于Django Filefield 的文章很少。
今天踩了踩坑,给了一套Filefiled上传保存文件的方法。
跟一般web开发一样,上传的文件保存在请求体的某个字段中,通常为file字段
views.py中,可以这样获得上传的文件

# view.py
def post(self, request):
	avatar = request.FILES.get("file")

这样avatar就存储了上传的文件,保存其实有很简单的方法,django替你封装好了:

# view.py
def post(self, request):
    import datetime
    user.avatar.save("{}_{}.jpg".format(user.id,  datetime.datetime.now().strftime('%Y-%m-%d')), avatar)
    user.save()

这里顺便对保存的数据进行了格式转化,调用了pythondatatime包,当然调用time包或者Djangotimezone包也是一样的。

你可能感兴趣的:(Django,python,django)