这很奇怪。它工作正常,但它运行的机器坏了,我不得不重新安装它没有成功。 webapp显示wuite背景,没有图像,css或js加载。
这些是settings.py中的变量(如果需要,请询问其他任何内容):
DEBUG = True
TEMPLATE_DEBUG = DEBUG
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = (
'/var/www/myapp/static/',
)
在我的tempaltes中,我总是设置内容'像这样的网址:
<img id="logo" src="{{STATIC_URL}}images/logo.png"\>
关于问题出在哪里?
答案 0 :(得分:1)
通常不鼓励您拥有的设置,对于本地开发,它们可以正常工作,但是如果您尝试在基于Linux的计算机上运行它,则无法正常工作。
以下是格式化方式:
以下设置就是这样的:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static', 'static_root')
#this applies to all operating systems
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static', 'static_dirs'),
)
您可以将静态文件夹和文件放在“static_dirs”中,然后在需要同步到“static_root”时使用。您可以输入:“python manage.py collectstatic”。
然后在模板文件中输入:
{% load static from staticfiles %}
<img id="logo" src="{% static "images/logo.png" %}"\>
这应该有效。
答案 1 :(得分:0)
检查源是否使用视图源加载,如果是,那么检查是否有任何指向静态资产的链接(如果存在)则必须硬刷新浏览器
答案 2 :(得分:0)
在模板中加入{% load staticfiles %}
。
答案 3 :(得分:0)
您对Allen Fernandes上述帖子的回复发表评论表示您处于DEBUG模式。 django.contrib.staticfiles
中有INSTALLED_APPS
吗?
答案 4 :(得分:0)
我终于发现了错误:Apache默认运行并在端口80中提供html模板,但没有静态文件的权限。