在 Ubuntu 上设置 Django 和 Posgtresql

在 Ubuntu 上设置 Django 和 Posgtresql

我正在运行 Kubuntu 12.04 LTS。

我一直在阅读 django 书籍,但遇到了一个障碍,无法设置 posgresql 来与 django 应用程序一起工作。

我已经通过 synaptic 安装了 python-postgresql 和 python-psycopg。运行时import conncetion from django.db出现以下错误:

Traceback (most recent call last):                                                                                                          
  File "<stdin>", line 1, in <module>                                                                                                       
  File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 11, in <module>                                                 
    if settings.DATABASES and DEFAULT_DB_ALIAS not in settings.DATABASES:                                                                   
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 53, in __getattr__                                            
    self._setup(name)                                                                                                                       
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 46, in _setup                                                 
% (desc, ENVIRONMENT_VARIABLE))                                                                                                         
django.core.exceptions.ImproperlyConfigured: Requested setting DATABASES, but settings are not configured. You must either define the envirogs.configure() before accessing settings.  

帮助我了解 django 和 postgreql 如何通信,或者给我一个适合初学者的 django 教程或一个帮助人们在 ubuntu 上设置 django 和 posgre 的帖子。

答案1

您需要在 中提供详细信息settings.py。这是您必须配置的部分

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': '',                      # 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.
    }
}

请参考http://www.djangobook.com/en/2.0/chapter05.html#configuring-the-database

编辑:

这是您的settings.py没有注释的文件。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2'
        'NAME': 'blank_db',
        'USER': 'postgres',
        'PASSWORD': 'thepasswd',
        'HOST': '',
        'PORT': '',
    }
}

ENGINE您的条目末尾缺少逗号

相关内容