首页 > 其他 > 详细

django之media配置

时间:2019-02-16 10:19:56      阅读:255      评论:0      收藏:0      [点我收藏+]

一、没有配置Media

avatar = models.FileField(upload_to=avatars/, default=/avatars/default.png)  # 储存头像的models代码

Django实现:

  • django会将文件对象下载到项目的根目录中avatars文件夹中(如果没有avatars文件夹,Django会自动创建)
  • default的意思是是如果该用户没有头像,会默认去找avatars下的default.png

 

二、Media配置

首先django有两种静态文件

  • /static/ : js , css ,img
  • /media/ : 用户上传文件

配置Media

MEDIA_ROOT = os.path.join(BASE_DIR, media)

 

获取用户上传头像

 avatar_obj = request.FILES.get(avatar)

 user_obj = UserInfo.objects.create_user(
                username=user,
                password=pwd,
                email=email,
                avatar=avatar_obj,
            )

 

配置Media后的django实现:

会将文件对象下载到MEDIA_ROOT中avatars文件夹中(如果没有avatars文件夹,Django会自动创建),user_obj的avatar存的是文件路径。

 

三、Media配置之MEDIA_URL

配置MEDIA_URL是为了让客户端直接访问Media中的数据,类似于STATIC_URL

 

settings.py

MEDIA_URL = /media/

 

urls.py

from django.urls import path, re_path
from django.views.static import serve

from cnblog import settings


urlpatterns = [

    # media配置
    re_path(rmedia/(?P<path>.*)$, serve, {document_root: settings.MEDIA_ROOT})  # 主要以media开头,后面写什么都行

]

 

django之media配置

原文:https://www.cnblogs.com/lshedward/p/10386831.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!