2015-04-15 21 views
13

Tôi có một ứng dụng django với phiên bản là 1.6.5, tôi đang cố gắng nâng cấp nó lên 1.8, nhưng trên đường tôi nhận được lỗi dưới đây ngay sau phiên bản django được tăng lên 1.8Không có mô-đun cơ sở dữ liệu phía Nam 'south.db.postgresql_psycopg2' cho cơ sở dữ liệu của bạn django

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', 
     }, 
    } 

Vì vậy, vấn đề là những gì và những gì cần phải được thực hiện để sửa lỗi này?

Tôi thậm chí còn thử với các thiết lập dưới đây và nhận được lỗi tương tự khi chạy django máy chủ địa phương

SOUTH_DATABASE_ADAPTERS = { 
    'default': "south.db. postgresql_psycopg2" 
} 

Trả lời

43

Giải pháp tôi thấy vấn đề trên đã được chỉ loại bỏ các nam từ môi trường ảo ngoài tất cả những thay đổi nêu trên

+4

Đây là những gì gây ra sự cố cho tôi. 'pip uninstall South' và di chuyển của tôi đã hoạt động. – Kobold

+0

Điều đó đã làm được! Cảm ơn. –

2

Kể từ Django 1,7, di cư là một phần của khuôn khổ này. Thay vì sử dụng South, bạn có thể muốn migrate to django.db.migrations.

Nói chung, bạn nên luôn đọc ghi chú phát hành (1.7 và 1.8) khi thực hiện cập nhật đó.

+0

: cảm ơn liên kết –

+2

Thực ra tôi đã xóa miền nam khỏi tệp installed_apps và vẫn phải đối mặt với cùng lỗi như trên, vấn đề sẽ là gì? –

+0

Bạn đã đọc https://docs.djangoproject.com/en/1.8/topics/migrations/#upgrading-from-south và thực hiện mọi thứ chưa? Loại bỏ phía nam chỉ là một trong các bước. – niconoe

9

Bạn có lẽ vẫn tham chiếu đến Nam bằng cách nhập ở đâu đó.

Chỉ:

pip uninstall south 

Sau đó:

python manage.py runserver 

Và quyết lỗi nhập.

0

Nếu bạn đang sử dụng Django < 1.7, bạn cũng nên cài đặt Nam> = 1.0.1 nếu bạn chưa cài đặt. Điều này không được liệt kê là phụ thuộc vì lợi ích của người dùng trên Django> = 1,7 và không cần đến nó.

Các vấn đề liên quan