Я пытался получить свое первое приложение в Интернете.Использование в качестве облачного приложения платформы Heroku .Приложение построено на Python с Django и предназначено для использования базы данных MYSQL, для которой предоставляется add_on JAWSDB.URL-адрес JAWSDB установлен в DATABASE_URL.Код моего приложения общедоступен на GitHub .Я могу развернуть код на Heroku, но при открытии приложения появляется ошибка приложения.(См. Журнал ниже).Я думаю, что это связано с my_settings , честно говоря, я не знаю, что нужно исправить.
- Это база данных, которая не открывается?
at=error code=H10 desc="App crashed" method=GET path="/" host=learningnow.herokuapp.com
Однако возможно подключиться к удаленной базе данных через MySql workbench. - Журнал ссылается на
engine = SCHEMES [url.scheme] if engineNone else engine KeyError: ''
Являются ли
django_heroku.settings (locals ())
, для которых я предполагаюDATABASE_URL найден, но, кажется, не работает.
Это связано с config = parse (s, engine, conn_max_age, ssl_require ).Однако в моей последней попытке я поставил
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', 'NAME': dj_database_url.config (default = os.environ [DATABASE_URL], ssl_require = False),}
2019-03-02T15: 33: 06.132322 + 00: 00 app [web.1]: engine = SCHEMES [url.scheme] ifДвижок отсутствует. Движок 2019-03-02T15: 33: 06.132370 + 00: 00 app [web.1]: KeyError: '' 2019-03-02T15: 33: 07.351885 + 00: 00 heroku [роутер]: at = ошибкаcode = H10 desc = "Приложение не работает" метод = GET path = "/" host = learningnow.herokuapp.com request_id = 28373f9d-99b1-4362-8054-de2e72aac130 fwd = "81.207.96.28" dyno = connect = service = status =503 байта = протокол = https 2019-03-02T15: 33: 08.147290 + 00: 00 heroku [роутер]: at = код ошибки = H10 desc = метод "Приложение зависло" = GET path = "/ favicon.ico" host = learningnow.herokuapp.com request_id = 073e5f94-a1ce-41ea-979c-4dabb341ea86 fwd = "81.207.96.28" dyno = connect = service = status = 503 байта = протокол = https
См. последнюю часть my_settings.pyфайл, который предназначен для подключенияt и откройте приложение на Heroku:
# Heroku settings
, если os.getcwd () == '/ app': import django_heroku django_heroku.settings (locals ())
import dj_database_url
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': dj_database_url.config(default=os.environ[DATABASE_URL],
ssl_require=False),
}
}
# Honor the 'X-Forwarded-Proto' header for request.is_secure().
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
# Allow all host headers.
ALLOWED_HOSTS = ['*']
# Static asset configuration
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = 'staticfiles'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
Anyпредложения о том, как сделать это лучше?