Джанго подтолкнул Героку: "Неизвестная команда:" сжать ""?
Я пытаюсь развернуть новое приложение Django/Wagtail в Heroku, но у меня возникают проблемы.
Я следую этому уроку, который работает до последнего раздела "Обслуживание статических ресурсов в Heroku". Когда я нажимаю приложение на Heroku с git push heroku master
однако, это терпит неудачу с этой ошибкой:
...
remote: 182 static files copied to '/app/static', 182 post-processed.
remote:
remote: -----> Running run_compress
remote: -----> Compressing static files
remote: Unknown command: 'compress'
remote: Type 'manage.py help' for usage.
remote:
remote: ! Push rejected, failed to compile Python app
remote:
remote: Verifying deploy....
remote:
remote: ! Push rejected to myapp.
remote:
To https://git.heroku.com/myapp.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/myapp.git'
$
Предположительно, у Heroku проблемы с Django Compressor, хотя в руководстве не указана его установка, поэтому я не уверен. Вместо этого в руководстве описывается установка книги под названием Heroku Django Cookbook, в которой указывается run_compress
в bash
файл, который выглядит так:
#!/usr/bin/env bash
set -eo pipefail
indent() {
RE="s/^/ /"
[ $(uname) == "Darwin" ] && sed -l "$RE" || sed -u "$RE"
}
MANAGE_FILE=$(find . -maxdepth 3 -type f -name 'manage.py' | head -1)
MANAGE_FILE=${MANAGE_FILE:2}
echo "-----> Compressing static files"
python $MANAGE_FILE compress 2>&1 | indent
echo
Ну, это похоже manage.py compress
не работает Или же это может быть что-то с Whitenoise, так как это раздел учебника, который терпит неудачу. Кажется, установлен правильно, хотя. Вот соответствующие строки из моего settings.py
:
...
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
COMPRESS_OFFLINE = True
COMPRESS_CSS_FILTERS = [
'compressor.filters.css_default.CssAbsoluteFilter',
'compressor.filters.cssmin.CSSMinFilter',
]
COMPRESS_CSS_HASHING_METHOD = 'content'
...
наконец, вот мой requirements.txt
beautifulsoup4==4.4.1
dj-database-url==0.4.1
dj-static==0.0.6
Django==1.9.6
django-appconf==1.0.2
django-compressor==2.0
django-modelcluster==1.1
django-taggit==0.18.3
django-toolbelt==0.0.1
django-treebeard==4.0.1
djangorestframework==3.3.3
gunicorn==19.6.0
html5lib==0.9999999
Pillow==3.2.0
psycopg2==2.6.1
python-dateutil==1.5
pytz==2016.4
rcssmin==1.0.6
requests==2.10.0
rjsmin==1.0.12
six==1.10.0
static3==0.7.0
Unidecode==0.4.19
wagtail==1.4.5
whitenoise==3.2
Willow==0.3.1
Есть идеи? Все приводы приветствуются. Спасибо!
1 ответ
Похоже, вы не добавили compressor
к INSTALLED_APPS
,
Также стоит отметить, что трясогузка больше не зависит отdjango_compressor
начиная с версии 1.4, так что если вам не нужно django_compressor
функциональность, вы можете просто удалить его из своего проекта.