如何在Django中设置PostgreSQL数据库

32 浏览
0 Comments

如何在Django中设置PostgreSQL数据库

我是Python和Django的新手。

我正在使用PostgreSQL数据库引擎后端配置Django项目,但每次执行数据库操作时都会出错。例如,当我运行manage.py syncdb时,我会遇到以下错误:

C:\xampp\htdocs\djangodir>python manage.py syncdb
Traceback (most recent call last):
  File "manage.py", line 11, in 
    execute_manager(settings)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
438, in execute_manager
    utility.execute()
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
261, in fetch_command
    klass = load_command_class(app_name, subcommand)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
67, in load_command_class
    module = import_module('%s.management.commands.%s' % (app_name, name))
  File "C:\Python27\lib\site-packages\django\utils\importlib.py", line 35, in im
port_module
    __import__(name)
  File "C:\Python27\lib\site-packages\django\core\management\commands\syncdb.py"
, line 7, in 
    from django.core.management.sql import custom_sql_for_model, emit_post_sync_
signal
  File "C:\Python27\lib\site-packages\django\core\management\sql.py", line 6, in
 
    from django.db import models
  File "C:\Python27\lib\site-packages\django\db\__init__.py", line 77, in 
    connection = connections[DEFAULT_DB_ALIAS]
  File "C:\Python27\lib\site-packages\django\db\utils.py", line 92, in __getitem
__
    backend = load_backend(db['ENGINE'])
  File "C:\Python27\lib\site-packages\django\db\utils.py", line 33, in load_back
end
    return import_module('.base', backend_name)
  File "C:\Python27\lib\site-packages\django\utils\importlib.py", line 35, in im
port_module
    __import__(name)
  File "C:\Python27\lib\site-packages\django\db\backends\postgresql\base.py", li
ne 23, in 
    raise ImproperlyConfigured("Error loading psycopg module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: No mo
dule named psycopg

有没有人能够给我一些线索,告诉我怎么回事?

admin 更改状态以发布 2023年5月23日
0
0 Comments

还要确保您已安装了PostgreSQL开发包。
在Ubuntu上,您需要执行以下操作:

$ sudo apt-get install libpq-dev

0
0 Comments

您需要安装 psycopg2 Python 库。

安装


下载 http://initd.org/psycopg/,然后在 Python PATH 下进行安装。

下载后,轻松地提取 tarball 并执行以下操作:

$ python setup.py install

或者,如果您愿意,可以通过 easy_installpip 进行安装。

(我比较喜欢使用 pip,没有任何原因。)

  • $ easy_install psycopg2
  • $ pip install psycopg2

配置


settings.py 中

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'db_name',                      
        'USER': 'db_user',
        'PASSWORD': 'db_user_password',
        'HOST': '',
        'PORT': 'db_port_number',
    }
}


- 其他安装说明可以在 下载页面安装页面 中找到。

0