2017-02-13 2 views
0

Я развернул приложение django в бесплатной учетной записи heroku. (Первый раз) В моей рабочей среде я использую SQLLite на Heroku. Я предполагаю, что POstgres должен работать.Данные всегда сбрасываются в исходное состояние на бесплатной учетной записи heroku через некоторое время

Однако я смущен, что происходит.

Итак, в первую очередь приложение работает и запускает данные, которые были в моей базе данных SQLlite, в настоящее время отображается в моем развернутом приложении.

Это потому, что моя SQLLite DB была скопирована в герою, и это то, что я на самом деле вижу?

Другая проблема, которая указывает, что somthing - это wron с DB, заключается в том, что если я создаю суперпользователя через терминал, я не могу войти в него с моим приложением.

Другая проблема заключается в том, что через некоторое время данные постоянно восстанавливаются до исходного состояния.

Я следовал инструкциям и это то, что у меня есть в моих настройках для БД

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', 
     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 
    } 
} 

import dj_database_url 
db_from_env = dj_database_url.config() 
DATABASES['default'].update(db_from_env) 

ответ

1

Потому что это, как работает Heroku. Файловая система является эфемерной, и вы ничего не должны хранить на ней; но sqlite хранит данные там, поэтому он будет сбрасываться каждый раз, когда запускается новый dyno.

Ваша ссылка на postgres сбивает с толку. Вы не используете postgres, но вы должны.

+0

Спасибо, что это означает, что перед отправкой обязательно использовать POSTGRES локально. Я действительно смущен тем, что должен иметь в моем файле настроек. Простое подключение к моим локальным POSTGRES? –

+0

Нет, это ничего не значит. Вы должны относиться к своим локальным и производственным базам данных как к совершенно раздельным. –

+0

Спасибо, но я все еще смущен. я предположил, что при добавлении - импорт dj_database_url db_from_env = dj_database_url.config() БАЗ [ «по умолчанию»] обновление (db_from_env) в настройки файла после того, как он развернут на Heroku будет выяснить, в какой БД в Postgres для. подключитесь и не догадайтесь, что было изначально настроено там. –

 Смежные вопросы

  • Нет связанных вопросов^_^