django实现上传头像和头像展示功能

本文介绍了如何使用Django框架实现图片上传功能。首先在models.py中定义Image模型,包含name和ImageField字段。接着,通过python manage.py makemigrations和migrate创建迁移并更新数据库。在settings.py中配置STATICFILES_DIRS,并确保静态文件目录正确。在views.py中处理GET和POST请求,接收并保存上传的图片。最后,在templates目录下创建image.html用于上传表单,image_show.html展示上传结果。注意添加路由以完成整个流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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'>

注:设置路由

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值