Staram się postępować zgodnie z poradą z książki "Dwa szufelki Django" i chociaż jest to naprawdę dobra książka, myślę, że ta sekcja jest niejasna. Więc podzielić mój plik ustawień i utworzeniu folderu takiego:Django. Używanie wielu plików ustawień z Heroku
settings/
__init__.py
base.py (allmost everything there)
local.py (dev. specific settings)
production.py (settings for Heroku)
większość ustawień znajdują się w pliku base.py
w local.py mam to:
# settings/local.py
from .base import *
DEBUG = True
TEMPLATE_DEBUG = DEBUG
INSTALLED_APPS += ("debug_toolbar", "django_extensions", "south",)
w production.py mam to:
from .base import *
INSTALLED_APPS += ("gunicorn",)
Kiedy uruchomić lokalnie:
python manage.py runserver 7000 --settings=appname.settings.local
python manage.py runserver 7000 --settings=appname.settings.production
wszystko działa poprawnie.
Ale kiedy wciskam zmiany Heroku, dostaję dziennik:
File "/app/.heroku/python/lib/python2.7/site-packages/gunicorn/util.py", line 354, in import_app
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
Więc chyba Heroku nie jest znalezienie moje pliki ustawień, nie wiem jak to naprawić (to może być bardzo prosty).
dwie miarki Django jest trochę ironiczne tutaj, to pisze „Platform as a Service - patrz rozdział 25.2”, a następnie w tej sekcji to po prostu pisze „czytać dokumentację Platform”:/
Czy to rozwiązuje: http://stackoverflow.com/questions/22674128/cant-get-django-postgres-app-settings-working-onoczy?rq=1 –