最适合网络开发者的网站
Django。初学者课程

尿素 西斯

Django 添加静态文件


创建静态文件夹

在构建 Web 应用程序时,您可能想要添加一些静态文件,如图像或 CSS 文件。

首先创建一个名为 static 在你的项目中,你创建templates 文件夹:

该文件夹的名称必须是 static.

我的网球俱乐部
管理.py
我的网球俱乐部/
会员/
模板/
静止的/

在中添加 CSS 文件 static 文件夹,名字由您选择,我们将称之为myfirst.css 在此示例中:

我的网球俱乐部
管理.py
我的网球俱乐部/
会员/
模板/
静止的/
myfirst.css

打开 CSS 文件并插入以下内容:

my_tennis_club/members/static/myfirst.css:

body {
  background-color: lightblue;
  font-family: verdana;
}

修改模板

现在您有一个包含一些 CSS 样式的 CSS 文件。下一步是将此文件包含在 HTML 模板中:

打开 HTML 文件并添加以下内容:

{% load static %}

和:

<link rel="stylesheet" href="{% static 'myfirst.css' %}">

例子

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>
运行示例 »

重新启动服务器以使更改生效:

py 管理.py 运行服务器

并在您自己的浏览器中检查结果: 127.0.0.1:8000/testing/.

没有作用?

只是测试? 如果你只是想玩一下,而不是部署你的工作,你可以设置DEBUG = True 在里面settings.py 文件,上面的例子就可以工作了。

计划部署吗? 如果你打算部署你的工作,你应该设置DEBUG = False 在里面settings.py 文件。上面的例子会失败,因为 Django 没有内置提供静态文件的解决方案,但是还有其他方式可以提供静态文件,您将在下一章中学习如何使用。

示例(正在开发中):

my_tennis_club/my_tennis_club/settings.py:

.
.
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
.
.

这将使示例工作,但我们希望您选择 DEBUG = False,因为这是学习如何使用 Django 的最佳方式。


选择调试 = False

在本教程的其余部分,我们将使用 DEBUG = False,即使在开发中,因为这是学习如何使用 Django 的最佳方式。

例子:

my_tennis_club/my_tennis_club/settings.py:

.
.
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False

ALLOWED_HOSTS = ['*']

.
.

ALLOWED_HOSTS

使用时 DEBUG = False 您必须指定允许哪些主机名托管您的作品。您可以选择'127.0.0.1' 或者'localhost' 这两个都代表本地机器的地址。

我们选择 '*', 意思是 任何 地址可用于托管此站点。当您将项目部署到公共服务器时,应将其更改为真实域名。


没有作用?

是的,示例仍然不起作用。

您必须安装第三方库才能处理静态文件。

有很多替代方案;我们将向您展示如何使用名为 白噪音 在下一章中安装 WhiteNoise.



评论