django 实现将本地图片存入数据库,并能显示在web上的示例


Posted in Python onAugust 07, 2019

1. 将图片存入数据库

关于数据库基本操作的学习,请参见这一篇文章:https://3water.com/article/167141.htm

这里我默认,您已经会了基本操作,能在数据库中存图片了,然后,也会用图形界面操作数据库中的数据了

2.这里,我先给出我的代码,能少走些弯路就少走些

a) 项目的urls.py

from django.contrib import admin
from django.urls import path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
  path('admin/', admin.site.urls),
]+static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

+号后面的一定要写,如果想出来结果的话!否则回报一个 404 的错误

- b) 应用里的models.py

from django.db import models

# Create your models here.
class Person(models.Model):
  name = models.CharField(max_length=30)
  age = models.IntegerField()

  def __unicode__(self):
  # 在Python3中使用 def __str__(self):
    return self.name

class IMG(models.Model):
  img = models.ImageField(upload_to='img')
  name = models.CharField(max_length=20)
  def __str__(self):
  # 在Python3中使用 def __str__(self):
    return self.name

之后,你要会把IMG这个模式推送到数据库。

python ./manage.py makemigrations
python ./manage.py migrate

c) 应用的views.py

# Create your views here.
def hello(request):
  IMG.objects.filter(name='bg')
  img = IMG.objects.all()
  return render(request, 'Welcome.html',{'img':img})

把img这个参数传过去,传到Welcome.html

- d) Welcome.html

<!DOCTYPE HTML>
<html>

<head>
  <title> welcome </title>
</head>
<body >
    {% for i in img %}
    <img src="{{MEDIA_URL}}{{i.img}}">
    {% endfor %}

</body> 
</html>

e) 设置setting.py

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
      'context_processors': [
        'django.template.context_processors.debug',
        'django.template.context_processors.request',
        'django.contrib.auth.context_processors.auth',
        'django.contrib.messages.context_processors.messages',
        'django.template.context_processors.media',
      ],
    },
  },
]

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

注意,东西都是配套使用的,如果e中的路径要变的话,a总的+号后面的也要跟着变化

3. 在http://127.0.0.1:8000/admin/网址上面,上传你的图片

django 实现将本地图片存入数据库,并能显示在web上的示例

以上这篇django 实现将本地图片存入数据库,并能显示在web上的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python标准库与第三方库详解
Jul 22 Python
玩转python爬虫之cookie使用方法
Feb 17 Python
Python3生成手写体数字方法
Jan 30 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
Jun 13 Python
Python3实现取图片中特定的像素替换指定的颜色示例
Jan 24 Python
如何在Django项目中引入静态文件
Jul 26 Python
Python DataFrame一列拆成多列以及一行拆成多行
Aug 06 Python
python mysql 字段与关键字冲突的解决方式
Mar 02 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
Python实现灰色关联分析与结果可视化的详细代码
Mar 25 Python
什么是Python装饰器?如何定义和使用?
Apr 11 Python
Python学习笔记之Django创建第一个数据库模型的方法
Aug 07 #Python
django将网络中的图片,保存成model中的ImageField的实例
Aug 07 #Python
Python学习笔记之文件的读写操作实例分析
Aug 07 #Python
详解python中__name__的意义以及作用
Aug 07 #Python
Pandas0.25来了千万别错过这10大好用的新功能
Aug 07 #Python
Python编程学习之如何判断3个数的大小
Aug 07 #Python
Python使用import导入本地脚本及导入模块的技巧总结
Aug 07 #Python
You might like
php面向对象全攻略 (十五) 多态的应用
2009/09/30 PHP
php GUID生成函数和类
2014/03/10 PHP
php实现基于微信公众平台开发SDK(demo)扩展的方法
2014/12/22 PHP
新浪SAE搭建PHP项目教程
2015/01/28 PHP
浅析PHP中的i++与++i的区别及效率
2016/06/15 PHP
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
JavaScript window.setTimeout() 的详细用法
2009/11/04 Javascript
Jquery 的扩展方法总结
2011/10/01 Javascript
js下拉菜单语言选项简单实现
2013/09/23 Javascript
JavaScript 开发工具webstrom使用指南
2014/12/09 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
JavaScript实现一个空中避难的小游戏
2017/06/06 Javascript
JavaScrpt判断一个数是否是质数的实例代码
2017/06/11 Javascript
js实现移动端轮播图效果
2020/12/09 Javascript
Vue.js 利用v-for中的index值实现隔行变色
2018/08/01 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
2019/02/27 Javascript
javascript实现滚动条效果
2020/03/24 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
2020/09/22 Javascript
通过实例解析js可枚举属性与不可枚举属性
2020/12/02 Javascript
详解微信小程序「渲染层网络层错误」的解决方法
2021/01/06 Javascript
JS相册图片抖动放大展示效果的示例代码
2021/01/29 Javascript
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
python shell根据ip获取主机名代码示例
2017/11/25 Python
详解Python字典的操作
2019/03/04 Python
人工神经网络算法知识点总结
2019/06/11 Python
Python生成一个迭代器的实操方法
2019/06/18 Python
python-docx文件定位读取过程(尝试替换)
2020/02/13 Python
python中threading开启关闭线程操作
2020/05/02 Python
python新手学习使用库
2020/06/11 Python
基于python+selenium自动健康打卡的实现代码
2021/01/13 Python
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
成龙洗发水广告词
2014/03/14 职场文书
荷叶母亲教学反思
2014/04/30 职场文书
夫妻婚内购房协议书
2014/10/05 职场文书
乡镇2014法制宣传日活动总结
2014/11/01 职场文书