如何在 Django 中使用 URL 包装器来处理静态文件?

2023-04-11 00:00:00 文件 静态 如何在

在 Django 中使用 URL 包装器来处理静态文件需要进行如下步骤:

  1. 在 Django 项目的 settings.py 文件中定义静态文件路径:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
]

其中,STATIC_URL 是静态文件 URL 的前缀,STATICFILES_DIRS 是静态文件的存放路径。

  1. 在 Django 项目的 urls.py 文件中导入 static 函数,将静态文件路径和 URL 包装起来:
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    ...
] + static(settings.STATIC_URL, document_root=settings.STATICFILES_DIRS[0])

其中,static 函数接受两个参数:静态文件 URL 的前缀和静态文件路径。使用 settings.STATIC_URL 和 settings.STATICFILES_DIRS 可以将静态文件路径和 URL 的前缀从 settings.py 中导入。

  1. 在 HTML 模板中使用静态文件的 URL:
<html>
  <head>
    <link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">
  </head>
  <body>
    <h1>pidancode.com</h1>
    <img src="{% static 'img/logo.png' %}">
  </body>
</html>

其中,{% static 'css/style.css' %} 表示需要使用 css/style.css 这个文件的 URL,{% static 'img/logo.png' %} 表示需要使用 img/logo.png 这个图片的 URL。

这样,在浏览器中访问 pidancode.com/static/css/style.css 或者 pidancode.com/static/img/logo.png 就可以正常加载静态文件了。

相关文章