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