使用django怎么在静态文件中配置静态的

  介绍

这篇文章给大家介绍使用django怎么在静态文件中配置静态的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<强>步骤>——应用程序   ,——迁移   ,——静态   ,,,的css   ,- js   ,,,的形象   ,- - -模板   ,——__init__ . py   ,……

文件结构如上所示,注意,我这里只展示了某应用程序下的结构,而不是整个项目结构,可能你的没有模板这个文件夹,这不要紧,这个是我创建的。

我们最好在静态下分类好不同文件夹css、javascript、图像。(这是推荐的做法)

多个应用程序时,我们就在不同的应用下创建静态的。(后面我们在讲更合理的方法,这里需要这样做为了你理清步骤)

<强>第二步

在设置。py中的STATIC_URL=& # 39;/静态/& # 39;后面添加

STATIC_ROOT =, os.path.join (BASE_DIR, & # 39;静态# 39;)

这个STATIC_ROOT就是我们最终部署时候需要使用的,解决资源分散的问题。

BASE_DIR这个变量在设置。py的开始部分被定义,就是项目根目录的目录名。

os.path。加入方法,在项目根目录下新建一个静态文件夹。

我看到很多博客这里配置的很多,很乱,让人摸不着头脑。

这个地方完全可以这样配置,加载我们的静态资源。(信我,我可是被很多不负责任的博客坑惨了)

<强>第三步

创建文件夹完,配置文件这两步都完成后,我们需要的就是把他放到网页中显示。

在应用下新建一个模板,如果有就不用创建

——应用程序   ,——迁移   ,——静态   ,- - -模板   ,——浏览器名称   ,,,index . html   ,——__init__ . py   以前,…

大家注意,我并没有直接在模板下直接创建索引。html,而是创建了一个“浏览器名称”(就根据你的应用程序来命名这样不会冲突)。并在浏览器名称下创建的指数。html。

因为django去找模板的时候是吧应用下的模板,存为一个列表。如果我们多个应用程序,就可能导致,想访问app2的指数,结果却返回了app1的index . html .

索引。html内容

{%, load  static  %}, #这个地方引入静态这个文件   & lt; ! DOCTYPE  html>   & lt; html  lang=癳n"祝辞   & lt; head>   ,& lt; meta  charset=癠TF-8"比;   ,& lt; title> Title      & lt;/head>   & lt; body>   & lt; img 静态“图像/src=https://www.yisu.com/zixun/眥%的标志。png”%}“alt="图像"/> #{%静态“图像/标志。png“%}表示路径         

这里的#号注释是方便大家理解,并不是html支持的格式,粘贴的时候需要去掉

并在图像文件夹下加入一张名为标志。png的图片,因为图片可以直观的判读我们的设置是否生效。

<代码> python管理。py runserver 0.0.0.0:9000

访问你的9000端口,查看时候生效。注意我们到这里还未配置nginx。

如果正确,说明路径没问题。

<强>第四步

<代码> python管理。py collectstatic

该命令收集项目下的静态文件,统一保存到STATIC_ROOT就是我们第二步,刚刚配置的。

——项目   ,——项目   ,——静态   ,——app1   ,——app2   ,——jobs   ,……

<强>第五步

nginx中配置

,位置^ ~,静态/,{   root 才能;/home/项目/;   以前,,}

这个地方注意配置到静态的上级就可以了。

我之前配置成了根/home/project/static就会一直提示404

在部署的时候,django也建议将设置。py中的debug=True改为debug=False。以保证安全性。

重新启动nginx,看看是否成功了呢?

如果成功了,可以将应用下的静态删掉再试试,理论上也是可以成功的,因为此时我们已经将项目所有的静态文件全都集中到了根目录下的静态中。

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

使用django怎么在静态文件中配置静态的