django实现这个功能首先在models.py中创建数据库模型类
class Image(models.Model):
name = models.CharField(max_length=30)
image = models.ImageField(upload_to='static/form')#该函数需要安装第三方包pillow
在控制台输入以下命令:
通过python manage.py makemigrations创建迁移文件
通过python manage.py migrate创建数据表
在setting.py中加上STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)
创建static文件包和app在同一路径下
在views.py内写
def image(request):
if request.method == 'GET':
return render(request, 'image.html')
if request.method == 'POST':
name = request.POST.get('name')
image = request.FILES.get('image')
images = Image(name=name, image=image)
images.save()
return render(request, 'image_show.html', {'images': images})
在Templates下
创建imsge.html
#头像的上传html
<form action='' method='post' enctype="multipart/form-data">
{% csrf_token %}
昵称:<input type='text' name='name'>
头像:<input type='file' name='image'>
<input type='submit'>
</form>
创建image_show.html
姓名:{{images.name}}
<br>
头像<img src='/{{images.image}}' alt='无' width='50' height='50'>
注:设置路由