Django 模版中的静态文件管理
在 Django 中,我们可以将网站使用的静态文件(如 CSS、JavaScript 等)放在专门的静态文件夹中,然后在 HTML 模版中通过一定的方式来引用这些文件。下面是具体的步骤:
-
在 Django 项目中创建一个名为 "static" 的文件夹,用于存放静态文件。
-
在模版中引用静态文件。在标签中使用以下代码:
python
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}" />
上述代码中,{% load static %} 是 Django 的静态文件管理标签,用来加载静态文件标签库。然后通过 href 属性引用静态文件。其中,css/style.css 是相对于静态文件夹的路径。
- 在 settings.py 中配置静态文件路径。在 INSTALLED_APPS 中添加 'django.contrib.staticfiles',并设置 STATIC_URL 和 STATICFILES_DIRS。如下所示:
```python
INSTALLED_APPS = [
'django.contrib.staticfiles',
# ...
]
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
```
以上三个设置的含义分别是:
- INSTALLED_APPS:指明使用静态文件。
- STATIC_URL:指明在 HTML 中使用的 URL 前缀。
- STATICFILES_DIRS:指明本地文件系统中的静态文件路径。我们可以添加多个文件夹路径。
在以上配置完成后,就可以愉快地使用静态文件了。
以下是一个简单的范例代码演示:
- 在 static 文件夹下创建 css 文件夹,并在其中创建 style.css。
css
body {
background-color: gray;
}
- 在 templates 文件夹下创建 index.html。
```html
{% load static %}
Welcome to pidancode.com!
```
- 在 views.py 中定义视图函数 index。
```python
from django.shortcuts import render
def index(request):
return render(request, 'index.html')
```
- 在 urls.py 中定义 URL 路由。
```python
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
```
- 启动 Django 服务器,然后在浏览器中打开 http://127.0.0.1:8000/,你将看到静态文件生效的效果。
希望这个范例能够帮助你更好地理解 Django 中的静态文件管理。
相关文章