Django-文件上传

Model

models.py

1
2
3
4
5
class UserModel(models.Model):
u_name = models.CharField(max_length=16)

# upload_to相对路径,相对于的是MEDIA_ROOT 媒体根目录
u_icon = models.ImageField(upload_to='%Y/%m/%d/icons')

View

views.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def upload(request):
if request.method == 'GET':
return render(request, 'upload.html')
elif request.method == 'POST':
# 文件上传,通过数据库存储文件路径
username = request.POST.get('username')
icon = request.FILES.get('icon')
user = UserModel()
user.u_name = username
user.u_icon = icon
user.save()

# 文件上传(原生)
# with open('D:\MyDjango\DjangoModel2\static\icon.jpg', 'wb') as save_file:
# for part in icon.chunks():
# save_file.write(part)
# save_file.flush()

return HttpResponse("文件上传成功 %d" % user.id)
坚持原创技术分享,您的支持将鼓励我继续创作!