2012-04-27 4 views
0

現在のシステム:Windows XP/Windows 7の次の展開のためのガイドラインに従った後(の両方のためにoccuring問題)のWinXP/7

https://devcenter.heroku.com/articles/python

と私は成功したログに次のエラーを確認した以外はheorkuを介してアプリケーションをプッシュすることができています簡単なアンケートアプリケーションを使用してテストすることによって表示されます:

2012-04-27T08:14:42+00:00 app[web.1]: django.core.exceptions.ImproperlyConfigure 
d: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No m 
odule named _sqlite3 

これは、データベースを同期しようとしているときにも発生します。ここで

は、settings.pyファイル内のデータベースの現在の設定です:

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': 'database.sqlite', # Or path to database file if using sqlite3. 
     'USER': '', # Not used with sqlite3. 
     'PASSWORD': '', # Not used with sqlite3. 
     'HOST': '', # Set to empty string for localhost. Not used with sqlite3. 
     'PORT': '', # Set to empty string for default. Not used with sqlite3. 
    } 
} 

私は承知しています、それは、sqlite3のデータベースである、と私はそれはまだHerokuのアプリを展開できるようにするべきであると言われていますエラーなし。 私はこの問題に関連して、次の潜在的な解決策を使用して続いている:

No module named _sqlite3 How do I set up SQLite with a Django project? http://groups.google.com/group/django-users/browse_thread/thread/185f981f432346f1

任意の助けが理解されるであろう!追加情報が必要な場合はお知らせください。

+0

もっと良い質問は、なぜあなたの配備にsqliteを使用しようとしているのですか?開発には向いていますが、1人から2人以上のユーザーがいつでもサイトを閲覧できるようにするには、大きな男の子のデータベースに移動する必要があります。 –

答えて

1

Herokuは、a read-only filesystemしか提供していないため、sqliteはサポートしていません。

+0

いいえ、あなたはsqlite3にあなたの設定を残すことができ、herokuは自動的にpostgresの設定を追加するので、上記のエラーを得るのは混乱します。 –

0

設定ファイルで同じエラーが発生しました。 Herokuのログを見ると、settings.pyファイルがいろいろな理由で失敗していることが分かりました。これらの問題を修正すると、Djangoはデータベース設定の欠落について不平を言った。

この問題の原因の1つは、私がallow sub-selects as tables in QuerySet extra()に使っていたサルのパッチでした。このパッチは設定ファイルの最後にあります。

# Override default behaviour of compiler to quote table names when table name is a sub-query 
from django.db.models.sql.compiler import SQLCompiler 
_quote_name_unless_alias = SQLCompiler.quote_name_unless_alias 
SQLCompiler.quote_name_unless_alias = lambda self,name: name if name.startswith('(') else _quote_name_unless_alias(self,name) 

このパッチは明らかにデータベースがすでに正しくその時点で指定する必要があります。 Herokuは設定ファイルの末尾に(つまりサルパッチの後に)magic DATABASES configurationを追加しているので、自分のサルパッチの上に手動で設定を挿入する必要がありました。

関連する問題