【问题标题】:Django problem with loading CSS and/or JS加载 CSS 和/或 JS 的 Django 问题
【发布时间】:2020-03-22 07:33:11
【问题描述】:

您好,我有一个项目要做,我一直想在不使用 Bootstrap 的情况下在我的 Django 项目中实现 CSS 和 JS。正如你所看到的,我有personal_portfolio/static/css/navbar.css 但是当我加载静态文件并在我的 base.html 中使用标签时,页面不会应用我的样式表。我不理解为什么 ! 而当我使用引导程序时,我没有问题! 我一直想只使用 CSS 和 JS,因为我也想学习这些,而我的项目要求我自己做而不是使用 Bootstrap。 非常感谢,希望大家能帮帮我!

【问题讨论】:

  • 在 settings.py 中设置 static_urlstaticfiles_dir - docs.djangoproject.com/en/2.2/ref/settings/…
  • 我已经设置了,但它似乎不起作用。它仍然要求我提供 STATIC_ROOT STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ] 我尝试查看文档,但我什么都不懂
  • personal_portfolio 是应用程序或项目名称?...您已将设置配置为静态文件位于根文件夹下,因此请确保它应仅位于根项目下。
  • PERSONAL_PORTFOLIO 是我的项目名称。 PROJECTS 是我的应用名称。我尝试将我的 personal_portfolio/static/css/navbar.css 作为 rp-portfolio/static/css/navbar.css 所以它在 ROOT 但它仍然不起作用。

标签: javascript html css django django-staticfiles


【解决方案1】:

尝试使用 {% load static %} 而不是{% load staticfiles %}

【讨论】:

  • 试过了,还是不行。我真的不明白为什么 bootstrap 这么容易工作而不是 css 文件
  • 你是如何加载引导程序的?如果它使用的是 CDN,那么您的问题来自您的配置。确保设置了STATIC_URL ='/static/'STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'personal_portfolio/static')
  • 嗨,STATICFILES_DIRS = ( os.path.join(BASE_DIR, '/static/'), 'personal_portfolio/static/') 我使用了这个并且它有效,但我不明白操作系统是什么.path.join(BASE_DIR 可以吗?我的意思是为什么我不必输入 os.path.join(BASE_DIR, 'personal_portfolio/static') ????
  • 我找到了同样的答案! stackoverflow.com/questions/52403518/…我只需要添加一个不同的目录!
【解决方案2】:

不确定这是否能解决您的问题,但请尝试运行 python manage.py collectstatic 在运行 django 服务器之前从您的终端。

【讨论】:

  • 它告诉我这个:文件“/Users/gabe/Desktop/Gabe/Programming/Django/rp-portfolio/venv/lib/python3.8/site-packages/django/contrib/staticfiles/ storage.py",第 44 行,在路径中 raise ImproperlyConfigured("您正在使用 staticfiles 应用程序" django.core.exceptions.ImproperlyConfigured:您正在使用 staticfiles 应用程序而没有将 STATIC_ROOT 设置设置为文件系统路径。这是只有 Traceback 错误结束
猜你喜欢
  • 1970-01-01
  • 2021-11-07
  • 2021-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-30
  • 2016-11-11
  • 2011-09-12
相关资源
最近更新 更多