【问题标题】:Django 3 doesn't load css fileDjango 3 不加载 css 文件
【发布时间】:2020-08-07 06:38:45
【问题描述】:

我正在本地测试我的 django 项目。

我的设置.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'firstapp',
]

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "Hello/static"),
]

网址.py

from django.contrib import admin
from django.urls import path, re_path
from firstapp import views

urlpatterns = [
    path('', views.index),
    path('admin/', admin.site.urls),
]

当我运行服务器时,加载了 html 文件,但谷歌浏览器显示:

django 不显示图片 我不明白为什么?

【问题讨论】:

  • 这是您屏幕截图上的一个奇怪的 URL(请不要将文本信息作为屏幕截图发布;HTML、URL 和错误消息都是文本)。您的模板文件不应该可以通过浏览器直接访问,并且您不应该尝试那样访问它们。打开你的根/ URL 和views.index 应该呈现你的模板作为响应。并从您使用的任何网络服务器撤消对项目文件夹的访问权限。顺便问一下,您如何启动/运行/实例化您的 Django 项目?
  • 你必须使用manage.py runserver而不是PyCharm在浏览器中的显示。

标签: python django django-templates django-staticfiles


【解决方案1】:

查看 URL,您可能使用了 IDE 的“在浏览器中显示”选项。通过这样做,您实际上并没有渲染模板 - 您只是显示原始 html 文件(这就是我们可以看到 {% load static %} 的原因。即使看到您的 html 看起来如何,您也需要做一个 @ 987654322@ 和 render 模板作为视图的 return。将视图分配给某个 url 并使用该 url 访问它 - 然后 {% load static %} 将真正完成它的神奇工作。

【讨论】:

    猜你喜欢
    • 2020-07-06
    • 2020-09-26
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-08
    • 2019-03-06
    • 2020-01-26
    相关资源
    最近更新 更多