django: form fileupload - 2

时间:2023-03-08 17:44:42

继续介绍文件上传的第二种形式和第三种形式。

-------------------------------------------------------------

第二种形式较简单,直接用 DB 和 Admin 进行上传和管理。

一,编辑 blog/models.py:

from django.db import models

class UserFile(models.Model):
name = models.CharField(max_length=20)
headImg = models.FileField(upload_to='./upload/') def __unicode__(self):
return self.name

二,同步数据库,打开 Admin,并编辑 blog/admin.py,注册 UserFile 类:

from django.contrib import admin
from blog.models import User, UserFile admin.site.register(User)
admin.site.register(UserFile)

三,在 127.0.0.1:8000/admin 中可以通过管理 Blog/User Files 项目来上传文件。

-------------------------------------------------------------

第三种形式结合第一种和第二种方法,从表单上传后,提取相应的文件,生成对象实例,并调用对象实例的 save() 方法保存。