0

我是 Django 新手,正在尝试学习如何在本地部署中提供静态文件。我已经从 stackoverflow 阅读了这个和许多其他可能的相关问题,但我似乎无法找到解决我的问题。

这是我的设置,我不知道 Django 不为我的静态文件提供服务的原因是什么

STATIC_ROOT = ''
STATIC_URL = '/html/'
STATICFILES_DIRS=('C:/Users/RayLim/Desktop/project/home/username/djcode/mysite/mysite/templates/html',)

在我的模板中,我将它们称为

<link rel="stylesheet" href="css/style.css" type="text/css" media="all" />

我的html文件的结构位于C:/Users/RayLim/Desktop/project/home/username/djcode/mysite/mysite/templates

html
 /css
  /images
  /style.css
 /js
  /jquery.jcarousel.pack
  /jquery-1.4.1.min
  /jquery-func

这是服务器响应

"GET /home/css/images/big1.jpg HTTP 1.1" 404 3782
4

2 回答 2

0

您应该避免硬链接到您的静态目录。随着您的项目变得越来越大,它可能会导致混乱和潜在的问题

请参考这个,它有你需要的一切。

Django 静态文件应用程序帮助

于 2013-05-02T03:16:37.597 回答
0

首先,静态文件和模板通常位于不同的目录中,但我认为不会有任何问题(我知道......)

接下来,您要确保使用模板标签来表示静态文件位置,而不是使用css/..which 期望有一个css相对于您当前正在查看的任何 url 的目录。

您可以使用几个模板标签,我使用{{ STATIC_URL }}

所以更换

<link rel="stylesheet" href="css/style.css" type="text/css" media="all" />

<link rel="stylesheet" href="{{ STATIC_URL }}css/style.css" type="text/css" media="all" />

你应该准备好了...

于 2013-05-02T03:17:54.297 回答