2017-02-13 3 views
0

私のdjangoアプリをheroku無料アカウントに展開しました。(初めて) 私の仕事環境では、私はHerokuでSQLLiteを使用しています。データはいつも英雄フリーアカウントで元の状態にリセットされます。

しかし、私は何が起こっているのか混乱しています。

まず、私のSQLliteデータベースにあったデータは、私の配備されたアプリケーションで現在表示されています。

私のSQLLite DBが英雄にコピーされたので、これは私が実際に見るものですか?

DBを使って何かがwronであることを示す別の問題は、端末からスーパーユーザーを作成すると、そのアプリケーションにログを書き込めないということです。

もう1つの問題は、データがしばらくして元の状態に復元されているように見えるということです。

私は指示に従った、これはそれがHerokuのがどのように動作するかですので、私は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

のための私の設定で持っているものです。ファイルシステムは一時的なものなので、何も保存してはいけません。 sqliteはそこにデータを格納しているので、新しいdynoが起動するたびにリセットされます。

あなたの参照が混乱しています。あなたはポストグルを使用していませんが、そうしなければなりません。

+0

ありがとうございます。アップロードする前に、POSTGRESをローカルで使用することが必須です。 私の設定ファイルにはどうすればいいですか?私のローカルPOSTGRESとの接続はちょっとありますか? –

+0

いいえ、そのようなことを意味するものではありません。ローカルデータベースと本番データベースを完全に分離して扱う必要があります。 –

+0

ありがとうございますが、私はまだ混乱しています。 私は追加していることを前提と - 。輸入dj_database_url db_from_env = dj_database_url.config() DATABASES [「デフォルト」]更新(db_from_env) を私の設定ファイルには、それがPostgresの中でどのようなDBに把握しますHerokuのために展開した後、接続し、最初に設定した内容とは関係ありません。 –

関連する問題