如何选择在PonyORM中使用哪种postgres架构?
我尝试使用只有一个名为“test1”的架构的权限的角色登录,但它将我连接到公共架构。所以,我删除了公共架构,然后它给了我一个错误:
ProgrammingError: no schema has been selected to create in
LINE 1: CREATE TABLE "customers" (
答案 0 :(得分:2)
您可以通过两种可能的方式进行操作。
首先是指定您的连接
db = Database()
... # models definition
pg = dict(
provider='postgres',
user='username',
password='pwd',
host='localhost',
database='db',
options='-c search-path=SCHEMA NAME') # here you specify default schema
db.bind(**pg)
db.generate_mapping(create_tables=True)
第二个是为实体指定_table_
选项
class Person(db.Entity):
_table_ = ('schemaname', 'tablename')
attribute = ...