web-dev-qa-db-ja.com

データベースにSouthデータベースモジュール 'south.db.postgresql_psycopg2'はありませんdjango

バージョンが_1.6.5_のDjangoアプリがあり、_1.8_にアップグレードしようとしていますが、途中でDjangoバージョンの直後に以下のエラーが発生しました。 _1.8_に増加

_There is no South database module 'south.db.postgresql_psycopg2' for your database. Please either choose a supported database, check for SOUTH_DATABASE_ADAPTER[S] settings, or remove South from INSTALLED_APPS.
_

コード

_INSTALLED_APPS = [
   'Django_messages',
    'avatar',
    'tinymce',
    'south',
    'tracking',
    ......
  ]

DATABASES = {
    'default': {
        'ENGINE': 'Django.db.backends.postgresql_psycopg2',
        'Host': '127.0.0.1',
        'NAME': 'xxxxxx',
        'USER': 'xxxxxx',
        'PASSWORD': 'xxxxxx',
        },
    }
_

では、何が問題で、これを修正するために何をする必要がありますか?

以下の設定で試してみましたが、Djangoローカルサーバーを実行すると同じエラーが発生します

_SOUTH_DATABASE_ADAPTERS = {
    'default': "south.db. postgresql_psycopg2"
}
_

上記の問題に対して私が見つけた解決策は、上記のすべての変更とは別に、仮想環境から南部を削除することでした。

あなたはおそらくまだどこかに輸入品を持って南を参照しています。

ただ:

pip uninstall south

次に:

python manage.py runserver

そして、インポートエラーを解決します。

9

Django 1.7なので、移行はフレームワークの一部です。Southを使用する代わりに、おそらく Django.db.migrationsに移行

一般的に言って、このような更新を行うときは、常にリリースノート(1.7および1.8用)を読む必要があります。

2
niconoe

バージョンが1.7以上のDjangoは、組み込みの移行を使用します。南を使う必要はありません。

Django移行フレームワークの詳細については、リリースノートを参照してください https://docs.djangoproject.com/en/1.9/releases/1.7/#schema-migrations ==

Djangoドキュメント- https://docs.djangoproject.com/en/1.8/topics/migrations/

南からのアップグレード- https://docs.djangoproject.com/en/1.8/topics/migrations/#upgrading-from-south

1
avs

Django <1.7を使用している場合、South> = 1.0.1をまだインストールしていない場合は、インストールする必要があります。これは、=を使用しているユーザーのために依存関係としてリストされていません。 Django> = 1.7そしてそれを必要としない。

0
Rochan