金字塔的postgresql连接[英] Pyramid postgresql connection

本文是小编为大家收集整理的关于金字塔的postgresql连接的处理方法,想解了金字塔的postgresql连接的问题怎么解决?金字塔的postgresql连接问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我对金字塔完全陌生.我正在尝试开发一个同时使用金字塔和 postgresql 的应用程序,但我完全不知道如何在 sripts 目录中配置 initializedb.py 文件,尤其是初始化数据库.

我使用的是 PostgreSQL 9.1.

推荐答案

如果我理解你的问题,你只需要找出在哪里配置与 DB 的连接.我假设您创建了一个基于 sqlAlchemy 的项目.在金字塔应用程序的根目录中,您可以找到 ini 文件.默认情况下,您应该有 development.ini 和 production.ini 文件.前者用于开发,后者用于生产环境,因此它们可以(并且应该)在某些配置上有所不同.

在这两个文件中,你应该找到这样的一行:

sqlalchemy.url = sqlite:///%(here)s/dbname.sqlite

您只需要使用以下内容更改该行:

sqlalchemy.url = postgresql://DBUser:DBPassword@DBHostNameOrIP:5432/DBName

(根据需要替换参数)

如果你直接使用 initializedb.py,但你应该使用 initialize_YourProject_db 脚本(在 bin 文件夹中,从金字塔根返回一个目录),如下所示:

initialize_YourProject_db development.ini

其中"YourProject"是您创建项目时定义的项目名称,development.ini 是您希望使用的 ini 文件.

如果还没有完成,您可能需要在 setup.py 中将"db-psycopg2"添加到所需模块并执行

pip install -e .

再次(最后一个点不是错字).请记住 psycopg2(postgresql 的驱动程序)具有依赖项(在 ubuntu 14_04 上,您需要一个 'apt-get install libpq-dev python-dev',它可能在其他发行版/SO 中有所不同).

如果 enaything 工作正常,脚本将根据您的模型创建所有引用的表,并插入 initializedb.py 中定义的所有项目并添加到 DBSession

本文地址:https://www.itbaoku.cn/post/1764062.html