当前位置: 首页 > 面试题库 >

Django staticfiles应用程序帮助

宗项禹
2023-03-14
问题内容

我在Django的staticfiles应用程序中遇到了一些问题。

我已经添加了

'django.contrib.staticfiles',

到我的INSTALLED_APPS并添加了

STATIC_URL = '/static/'
STATIC_ROOT = '/Users/kevdotbadger/django/mylook/static/'

到我的settings.py文件。

我所有的静态文件都位于STATIC_ROOTMac上的文件夹中。

现在,在我的模板中

{{ STATIC_URL }}

正确呈现为/static/

然而

{{ STATIC_URL }}css/style.css

导致404错误。我正在使用“ runserver”命令作为服务器。


问题答案:

简而言之:STATIC_ROOT仅在调用collectstatic manangement命令时使用。无需将目录添加到STATICFILES_DIRS设置即可提供静态文件!

在开发过程中(使用自动服务视图时),静态文件将自动在各个位置查找静态文件(因为你将其“ serve”视图称为静态文件的路径)。对于此搜索,它将使用所谓的“查找器”(在STATICFILES_FINDERS设置中定义)。

  1. 默认查找器之一是AppDirectoriesFinder,它将在你的INSTALLED_APPS设置的每个应用程序的“ / static /”目录中查找。

  2. 另一个默认查找器是FileSystemFinder,它将查找你在STATICFILES_DIRS设置中指定的目录。

顺便说一句,这两种搜索模式都类似于模板加载的工作方式。

运行collectstatic命令时将使用相同的技术,除了它现在将从不同位置收集文件(使用与上面相同的查找器),将找到的文件放入STATIC_ROOT中,以供部署。



 类似资料:
  • Application是CatLib程序的核心,也是所谓的程序入口。应用程序通过引导来加载服务提供者和其他一些必须的资源。应用程序在一般情况下只允许启动一个,且只能在主线程中启动。 在任何位置,您可以通过App全局变量访问应用程序。 启动流程 Application.Bootstrap -> Application.Register -> Application.Init Application.

  • Leafpad Leafpad是一个十分小巧、快捷的图形界面文本编辑器,它可以用于作笔记或者编辑文件。你可以在菜单中找到它,或者直接在命令行中指定Leafpad编辑文件: $ leafpad Templates/script-shell.sh ISO 大师 —— 创建并且编辑ISO文件 ISO大师是一个可以创建、操作、编辑ISO镜像的图形工具,你可以储存或刻录生成的ISO文件。这个软件简单、直观

  • The best software in the world only sucks. The worst software is significantly worse than that. — Luke Kanies 在本章中,我们将学习如下内容: 管理 Apache 服务 创建 Apache 虚拟主机 创建 Nginx 虚拟主机 创建 MySQL 数据库及用户 管理 Drupal 站点 管理

  • 我在cronMaker中尝试了下面的cron表达式:0.07-20/23-5*Mon-Fri*这里我得到了上面表达式的错误。 请帮助我解决这个问题。提前谢谢你。

  • 我正在尝试用Spray和Akka创建一个新的Scala项目。我正在使用Scala 2.12.1,我的pom如下所示。 这个pom构建了一个WAR文件,但是每次我试图将该WAR文件部署到服务器上时,都会得到以下错误。我相信我使用的依赖项与Scala 2.12.1是兼容的,你们能找出问题所在吗?

  • 下图说明数据流如何贯穿整个系统: index.php 作为前端控制器,初始化运行 CodeIgniter 所需要的基本资源。 Router 检查 HTTP 请求,以确定谁来处理请求。 如果缓存(Cache)文件存在,它将绕过通常的系统执行顺序,被直接发送给浏览器。 安全(Security)。应用程序控制器(Application Controller)装载之前,HTTP 请求和任何用户提交的数据将