脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - django将图片上传数据库后在前端显示的方法

django将图片上传数据库后在前端显示的方法

2021-02-25 00:00fearless11 Python

今天小编就为大家分享一篇django将图片上传数据库后在前端显示的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

1、使用ImageField先安装pillow模块

?
1
pip install pillow

2、在app的models中设置

?
1
2
3
class Image(models.Model):
  pic_name=models.CharField('图片',max_length=40)
  pic_path=models.ImageField(upload_to="pic_folder/",default='pic_folder/None/no_image.pig')

3、在app的view中设置获取图片的方法

?
1
2
3
def upload_pic(request):
  pic=Image.objects.all()
  return render(request,'blog/image.html',{'pic':pic})

4、在settings中设置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
1、添加media模板
TEMPLATES = [
 {
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [os.path.join(os.path.dirname(__file__), 'templates'),os.path.join(os.path.dirname(__file__), 'static'), ],
 
  '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',
   ],
  },
 },
]
 
2、设置media的路径
MEDIA_URL='media/'
MEDIA_ROOT=os.path.join(BASE_DIR,'media').replace('\\','/')

5、在app的urls中设置

?
1
2
3
4
5
6
from django.conf.urls.static import static
 from django.conf import settings
 
 urlpatterns = [
  url(r'^pic$', views.upload_pic, name='upload_pic')
 ]+static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

通过admin登录后上传图片,会在站点下生成media/pic_folder的目录

以上这篇django将图片上传数据库后在前端显示的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/fearless11/article/details/70185247

延伸 · 阅读

精彩推荐