Tôi đang làm việc thông qua các hướng dẫn Django và nhận được lỗi sau khi tôi chạy ban đầu python manage.py syncdb:Django hướng dẫn nói rằng tôi chưa thiết lập chưa DATABASE_ENGINE ... nhưng tôi có
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/Library/Python/2.6/site-packages/django/core/management/__init__.py", line 362 in execute_manager
utility.execute()
File "/Library/Python/2.6/site-packages/django/core/management/__init__.py", line 303, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 195, in run_from_argv
self.execute(*args, **options.__dict__)
File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 222, in execute
output = self.handle(*args, **options)
File "/Library/Python/2.6/site-packages/django/core/management/base.py", line 351, in handle
return self.handle_noargs(**options)
File "/Library/Python/2.6/site-packages/django/core/management/commands/syncdb.py", line 49, in handle_noargs
cursor = connection.cursor()
File "/Library/Python/2.6/site-packages/django/db/backends/dummy/base.py", line 15, in complain
raise ImproperlyConfigured, "You haven't set the DATABASE_ENGINE setting yet."
django.core.exceptions.ImproperlyConfigured: You haven't set the DATABASE_ENGINE setting yet.
Cài đặt của tôi.py trông giống như:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'dj_tut', # 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.
}
}
Tôi đoán đây là điều đơn giản, nhưng tại sao lại không nhìn thấy cài đặt ENGINE?
Cảm ơn, điều đó dường như là vấn đề. Câu hỏi tiếp theo: Tôi đã tạo một virtualenvwrapper bằng cách sử dụng --no-site-wrapper và sau đó cài đặt Django. Có vẻ như tôi có Django 1.2.1 trong virtualenvwrapper, nhưng Django 1.1.1 trong các gói trang web toàn cầu của tôi. Bạn có biết tại sao tệp settings.py này sẽ đề cập đến gói trang web toàn cầu và không phải là tệp được cài đặt trong virtualenv không? – Joe
Vâng, đó thực sự là 'manage.py' đang đề cập đến phiên bản toàn cầu thay vì phiên bản ảo - cài đặt phù hợp với phiên bản bạn có bên trong virtualenv (1.2). Câu hỏi ngớ ngẩn: bạn đã kích hoạt virtualenv chưa? –
Luôn luôn đáng hỏi những câu hỏi ngớ ngẩn vì nó là rất có thể là tôi đã không. Tôi chỉ cần thử một lần nữa (virtualenv kích hoạt) và bây giờ tắt đến một lỗi khác nhau: django.core.exceptions.ImproperlyConfigured: Lỗi tải mô-đun MySQLdb: Không có mô-đun tên MySQLdb - Là một người mới đến Stackoverflow, tôi đoán tôi nên đăng bài này một cách riêng biệt ? Cảm ơn bạn đã giúp đỡ. – Joe