如何在Django中配置静态文件

  介绍

这篇文章将为大家详细讲解有关如何在Django中配置静态文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

<强>静态配置:

静态主要指的是如css、javascript、图像这样文件:

STATIC_URL =, & # 39;/静态/& # 39;,#,别名      STATICFILES_DIRS =, (   os.path.join才能(BASE_DIR,“static"),, #,实际名,即实际文件夹的名字   ]   #,注意:django对引用名和实际名进行映射,引用时,只能按照引用名来,不能按实际名去找以前

<强>媒体配置:

MEDIA_URL =,“/媒体/?      #,用户上传的文件(针对models.py中的FileField, ImageField字段)保存到哪   MEDIA_ROOT =, os.path.join (BASE_DIR,“应用程序名字“,,“media") #,配合settings.py里的MEDIA_URL =,“/媒体/芭渲?即对外开放了这个接口的权限   得到django.conf.urls  import  url   得到django.views.static  import 服务   得到只import 设置      urlpatterns =, (   ,,url(" # 39; ^媒体/(?术;path>。*) $ & # 39;,,,, {“document_root": settings.MEDIA_ROOT}),   )

<>强ps:

静态文件的处理又包括静态和媒体两类,这往往容易混淆,在Django里面是这样定义的:

媒体:指用户上传的文件,比如在模型里面的FileFIeld, ImageField上传的文件。如果你定义

MEDIA_ROOT=c: \ temp \媒体,那么文件=models.FileField (upload_to=癮bc/? #,上传的文件就会被保存到

c: \ temp \媒体\ abc   例如:   class 博客(models.Model):   时间=Photo  models.ImageField (upload_to=皃hoto")

上传的图片就上传到c: \ temp \媒体\照片,而在模板中要显示该文件,则在设置里面设置MEDIA_ROOT(必须是本地路径的绝对路径),一般是这样写:

<代码> MEDIA_ROOT=os.path。加入(BASE_DIR & # 39;媒体/& # 39;).replace(& # 39; \ \ & # 39;, & # 39;/& # 39;)

MEDIA_URL是指从浏览器访问时的地址前缀,举个例子:

MEDIA_ROOT =, c: \ temp \ \媒体照片   ,,,MEDIA_URL =,“/数据/?/pre>

在开发阶段,媒体的处理由django处理:

访问http://localhost/data/abc/a.png就是访问c: \ temp \媒体\ \ abc \ a.png照片

在模板里面这样写& lt; img src=https://www.yisu.com/zixun/"/媒体/abc/a.png ">

在部署阶段最大的不同在于你必须让web服务器来处理媒体文件,因此你必须在web服务器中配置,

以便能让web服务器能访问媒体文件。

以nginx为例,可以在nginx.conf里面这样:

,,,的位置~/媒体/{   ,,,,,,,,根/temp/,,,,,,,,,休息;   ,,,,,,,}

关于如何在Django中配置静态文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

如何在Django中配置静态文件