django 1.6.5
我的静态文件位于static的子文件夹下。
djangoprj
djangoprj
settings.py
urls.py
wsgi.py
__init__.py
static
myapp
mystaticfiles
...
apps
myapp
...
templates
*.html
...
在我的模板文件中,我将静态文件链接为完整路径。
<img src="/static/myapp/images/my.png" />
但是找不到那些文件。我收到404错误。
将settings.py更改为
时STATIC='/static/myapp/'
我可以获取那些静态文件。但我不想这样做。当STATIC='/static/'
时,为什么不加油?是否有一些简单的方法来解决这个问题而不是执行命令manaully,例如'collectstatic'?我已将我的静态文件放在static
文件夹中,并且我在模板文件中使用了完整路径。为什么不起作用?提前谢谢。
答案 0 :(得分:2)
现在您将静态文件夹切换到'/static/myapp/'
您应在标记中使用<img src="/static/images/my.png" />
。
通常,您应该使用{% static %}
模板标记执行此操作,如下所示(假设为STATIC='/static/'
)。
{% load staticfiles %}
<img src="{% static 'images/myapp/my.png' %}" />
了解详情,请参阅教程https://docs.djangoproject.com/en/1.6/intro/tutorial06/
我建议你阅读https://docs.djangoproject.com/en/1.6/
中的所有教程(第1部分 - 第6部分)这样你就可以深入了解基础。
答案 1 :(得分:2)
您也可以在这些答案中找到一些帮助
在我的配置中,我有一个目录结构,其中静态文件在我的应用程序中,如此
djangoprj
djangoprj
settings.py
urls.py
wsgi.py
__init__.py
apps
myapp
...
templates
*.html
static
myapp
mystaticfiles
...
...
在设置中
INSTALLED_APPS = (
...
'django.contrib.staticfiles',
...
)
STATIC_URL = '/static/'
在模板中我使用'static'标签
{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static 'posts/style.css' %}" />
我希望这可以帮到你