Python+Django下载网络图片,保存到ImageField

网上搜的那种两行代码的,保存后,图片损坏无法打开。所以记录一下爬取到网络小说的封面后,保存到数据库自己用的方法,可能比较笨:

数据Model

model

保存逻辑:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django 中显示图片可以通过以下步骤实现: 1. 首先,在你的 Django 项目中的 settings.py 文件中,确保你已经配置了正确的媒体文件设置。在该文件中找到 `MEDIA_URL` 和 `MEDIA_ROOT` 两个参数,确保它们的值分别为: ``` MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') ``` 2. 在你的项目中创建一个 `media` 文件夹(如果尚未存在),该文件夹将用于存储你的图片文件。 3. 在你的 Django 应用程序中的 models.py 文件中,定义一个带有 `ImageField` 的模型字段,用于存储图片的路径: ```python from django.db import models class YourModel(models.Model): image = models.ImageField(upload_to='your_upload_directory') ``` 4. 运行数据库迁移命令以创建模型表: ``` python manage.py makemigrations python manage.py migrate ``` 5. 在你的视图文件 views.py 中,将图片数据传递给模板: ```python from django.shortcuts import render from .models import YourModel def your_view(request): images = YourModel.objects.all() return render(request, 'your_template.html', {'images': images}) ``` 6. 在你的模板文件 your_template.html 中,使用 `media` 标签和模型字段来显示图片: ```html {% for image in images %} <img src="{{ image.image.url }}" alt="Image"> {% endfor %} ``` 这样,当你渲染该模板时,图片将从指定的路径中加载并显示在页面上。确保你已经在模型中指定了正确的图片上传目录,并且已经将图片上传到该目录中了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值