1
当运行git Heroku的推高手,我得到两个错误/消息:Django的Heroku的收集静态配置错误
Collectstatic configuration error. To debug, run:
remote: $ heroku run python manage.py collectstatic --noinput
我的应用程序,尽管这种成功部署。然后,我得到一个消息,PIP升级到最新版本(7.1.2),即使它已经升级:
You are using pip version 7.1.0, however version 7.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
我有两个设置文件 - 一个用于本地和一个生产
settings.py
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = 'staticfiles'
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static/'),
)
settings_production.py
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
wsygi.py
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE",
"viewelsewhere.settings_production")
from django.core.wsgi import get_wsgi_application
from whitenoise.django import DjangoWhiteNoise
application = get_wsgi_application()
application = DjangoWhiteNoise(application)
似乎根据的Heroku文档这里处于工作状态: https://devcenter.heroku.com/articles/django-assets
如果我尝试调试和运行:
heroku run python manage.py collectstatic --noinput
我会出现以下错误:
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No
module named psycopg2
据我所知,这与Postgresql绑定,但我在本地使用sqlite3,并希望在生产中使用Postgresql。
我很接近推动我的应用程序生活,并会爱这个问题的帮助。谢谢!
谢谢!我将psycopg2 == 2.5.3添加到我的requirements.txt文件中,并在推送到heroku时安装了它。但是,我仍然收到沉重的错误。现在,当我运行时,heroku运行python manage.py collectstatic --noinput,我得到这个错误:OSError:[Errno 2]没有这样的文件或目录:'/ app/viewelsewhere/static'。这个目录在哪里被引用? – leurysworld
这是你应该把你所有的静态文件放在你的viewelse文件中的地方,只需要创建一个名为static的文件夹,并将你的静态文件放在里面,如果它的样式不起作用,试着用'STATIC_ROOT = os替换你的静态根.path.join(BASE_DIR,'staticfiles')',即使heroku文档另有说明 – romainm