分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

django实现图片上传和显示

发布时间:2023-09-06 02:03责任编辑:胡小海关键词:django

首先安装pillow模块

在models.py下设置

class Notices(models.Model):
???NoticeCategory=models.CharField(max_length=10,default=‘‘) #新闻分类
???NoticeImagePath=models.ImageField(upload_to=‘img‘)

这里的upload_to是指将图片存放在哪个位置

在views.py中设置获取图片的方法

def index(request): ???Notice_list = Notices.objects.all().order_by(‘NoticeData‘)[:10] ???return render(request, ‘index.html‘, {‘Notice_list‘: Notice_list})

  我这里是获取整个notices列表。

在setting中设置:

MEDIA_ROOT = os.path.join(BASE_DIR, ‘media‘).replace(‘\\‘, ‘/‘) ????#设置静态文件路径为主目录下的media文件夹MEDIA_URL = ‘/media/‘

在上传图片时会自动生成media这个文件夹 

TEMPLATES = [ ???{ ???????‘BACKEND‘: ‘django.template.backends.django.DjangoTemplates‘, ???????‘DIRS‘: [os.path.join(BASE_DIR, ‘templates‘)] ???????, ???????‘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‘,#新增加的一行 ???????????], ???????}, ???},]

  在urls中添加

urlpatterns = [ ???url(‘admin/‘, admin.site.urls), ???url(r‘^std_web/‘, include(‘std_web.urls‘, namespace=‘std_web‘)),]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

 在index.html中

<a href="{{Notice_list.NoticeImagePath.url}}"><img src="{{Notice_list.NoticeImagePath.url}}"></img></a>

  具体显示图片代码。

django实现图片上传和显示

原文地址:https://www.cnblogs.com/1998lu/p/9291674.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved