首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Django中设置PostgreSQL数据库

如何在Django中设置PostgreSQL数据库
EN

Stack Overflow用户
提问于 2011-03-23 00:13:20
回答 8查看 203.3K关注 0票数 113

我是Python和Django的新手。

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

代码语言:javascript
复制
C:\xampp\htdocs\djangodir>python manage.py syncdb
Traceback (most recent call last):
  File "manage.py", line 11, in <module>
    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 <module>
    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
 <module>
    from django.db import models
  File "C:\Python27\lib\site-packages\django\db\__init__.py", line 77, in <modul
e>
    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 <module>
    raise ImproperlyConfigured("Error loading psycopg module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg module: No mo
dule named psycopg

有没有人能告诉我到底是怎么回事?

EN

回答 8

Stack Overflow用户

发布于 2012-08-16 22:12:26

还要确保安装了PostgreSQL开发包。在Ubuntu上,你需要这样做:

代码语言:javascript
复制
$ sudo apt-get install libpq-dev
票数 31
EN

Stack Overflow用户

发布于 2014-09-29 00:52:46

我一步一步地使用:

代码语言:javascript
复制
 - sudo apt-get install python-dev
 - sudo apt-get install postgresql-server-dev-9.1
 - sudo apt-get install python-psycopg2 - Or sudo pip install psycopg2

您可能需要安装一个图形工具来管理您的数据库,为此,您可以这样做:

代码语言:javascript
复制
sudo apt-get install postgresql pgadmin4 

之后,您必须更改Postgre用户密码,然后执行以下操作:

代码语言:javascript
复制
 - sudo su
 - su postgres -c psql postgres
 - ALTER USER postgres WITH PASSWORD 'YourPassWordHere';
 - \q

在您的settings.py文件中,您需要:

代码语言:javascript
复制
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'dbname',
        'USER': 'postgres',
        'PASSWORD': 'postgres',
        'HOST': '',
        'PORT': '',
    }
}

额外的:

如果想要使用命令行创建数据库,只需执行以下操作:

代码语言:javascript
复制
- sudo su
- su postgres -c psql postgres
- CREATE DATABASE dbname;
- CREATE USER djangouser WITH ENCRYPTED PASSWORD 'myPasswordHere';
- GRANT ALL PRIVILEGES ON DATABASE dbname TO djangouser;

在您的settings.py文件中,您需要:

代码语言:javascript
复制
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'dbname',
        'USER': 'djangouser',
        'PASSWORD': 'myPasswordHere',
        'HOST': '',
        'PORT': '',
    }
}
票数 25
EN

Stack Overflow用户

发布于 2011-03-23 01:20:13

您可以使用以下命令安装“install”:

代码语言:javascript
复制
# sudo easy_install psycopg2

或者,您可以使用pip:

代码语言:javascript
复制
# pip install psycopg2

easy_install和pip包含在ActivePython中,也可以从respective project站点手动安装。

或者,简单地获取pre-built Windows installer

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5394331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档