我正在向Stackato部署一个Django应用程序。除静态文件外,一切正常。根据文档,这是我在.yml文件中的设置:
processes:
web: $STACKATO_UWSGI --static-map /static=$HOME/static
这是我的本地setting.py:
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_PATH, "static"),
'/var/www/static/',
)
此外,这是我的项目结构
Project -- .....
|
static -- css
|
-- images
我没有看到日志中的任何错误。有什么想法吗?
答案 0 :(得分:0)
您的配置应该有效。特别是 static / css 和 static / images 目录中的资源将通过http://your-stackato-host/static/css/yourstyle.css等网址提供。
为帮助解决此问题,我创建了一个bare-bones example on github,您可以克隆并推送到Stackato以验证它是否有效。
答案 1 :(得分:0)
刚想通了:
1.虽然将settings.DEBUG设置为True,但必须包含静态网址格式:
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
if settings.DEBUG:
urlpatterns += staticfiles_urlpatterns()
2.静态文件应遵循以下结构:
Project -- <app 'Project'> -- settings.py
| |
| -- urls.py
| |
| -- wsgi.py
|
-- <app 'somename'> -- ..
|
-- static -- <app 'somename'> -- css - a.css
|
-- images - a.jpg
3. STATIC_ROOT
不应该是静态目录的实际位置,可以是这样的:Project/Project/static
,而STATICFILES_DIRS
必须是Project/somename app/static
的实际静态文件目录。 1}}