比如关于django1.3的第十亿个静态文件问题。我一直在寻找和尝试很多事情,但似乎没有什么对我有用。任何帮助都将不胜感激。尽可能多地提供信息。在
URL文件
urlpatterns = patterns('',
url(r'^projectm/statictest/$','project_management.views.statictest'),)
视图
^{pr2}$模板
<html><head><title>Static Load Test Page</title></head>
<body>
{% load static %}
<img src="{{ STATIC_URL }}testimage.jpg" />
</body></html>
设置
STATIC_ROOT = '/home/baz/framework/mysite/static/'
STATIC_URL = '/static/'
STATICFILES_DIRS = ('',)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
TEMPLATE_DIRS = (
"/home/baz/framework/mysite/templates"
文件
-bash-3.2$ pwd
/home/baz/framework/mysite/templates
statictest.html
-bash-3.2$ pwd
/home/baz/framework/mysite/project_management/static
-bash-3.2$ ls
testimage.jpg
不太确定是否有其他有用的信息。但基本上,当我转到这个测试页面并检查页面源代码时,url指向的是
<img src="/static/testimage.jpg" />
但是图像不会加载。我也在多个浏览器上尝试过。也许我在某处漏掉了一份imort声明?在
为帮助干杯
您是在使用内置的
runserver
命令还是以其他方式为Django应用程序提供服务?在如果您使用
runserver
,那么您的问题是没有告诉Django在文件系统中的何处找到静态资产。您需要将STATIC_ROOT设置为可以找到静态资产的文件系统路径。尝试将其设置为:/home/baz/framework/mysite/project_management/static/
如果您使用的是不同的服务器(例如Nginx背后的gunicorn),那么前端服务器负责拦截对
/static/
的请求并为您提供服务。在还请记住,一旦设置了“STATIC_ROOT”,请运行“collectstatic”管理命令。在
https://docs.djangoproject.com/en/1.4/howto/static-files/#deploying-static-files-in-a-nutshell
相关问题 更多 >
编程相关推荐