菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Django - 收集静态文件


处理静态文件

在你的项目中,像样式表、JavaScript 和图片这样的静态文件,在 DEBUG = False 时 Django 不会自动处理。

DEBUG = True 时,这工作正常,我们只需要将它们放在应用程序的 static 文件夹中。

DEBUG = False 时,必须先收集静态文件并将其放入指定文件夹,然后才能使用它们。


收集静态文件

要收集你项目所需的所有静态文件,首先在 settings.py 文件中指定一个 STATIC_ROOT 属性。

这指定了你想要收集静态文件的文件夹。

你可以随意命名文件夹,我们将其命名为 productionfiles

my_tennis_club/my_tennis_club/settings.py:

.
.

STATIC_ROOT = BASE_DIR / 'productionfiles'

STATIC_URL = 'static/'

.
.

你可以手动创建此文件夹并将你项目的所有静态文件收集并放入此文件夹,但 Django 提供了一个命令可以为你完成此操作

py manage.py collectstatic

这将产生以下结果:

已将 131 个静态文件复制到 'C:\Users\your_name\myworld\my_tennis_club\productionfiles'。

131 个文件?为什么这么多?这是因为 Django 内置的管理用户界面。我们希望在生产环境中保留此功能,它附带了大量的样式表、字体、图片和 JavaScript 文件。

my_tennis_club
    members/
    my_tennis_club/
    productionfiles/
        admin/
        myfirst.css

示例应能正常工作

现在你已经收集了项目的静态文件,如果你已经安装了 WhiteNoise,那么来自添加静态文件章节的示例将最终能够正常工作。

启动服务器并查看结果

py manage.py runserver

在你的浏览器中查看结果: 127.0.0.1:8000/testing/

示例

my_tennis_club/members/templates/template.html:

{% load static %}
<!DOCTYPE html>
<html>
<link rel="stylesheet" href="{% static 'myfirst.css' %}">
<body>

{% for x in fruits %}
  <h1>{{ x }}</h1>
{% endfor %}

</body>
</html>
运行示例 »


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持