4

如何选择在 PonyORM 中使用的 postgres 模式?

我尝试使用仅对一个名为“test1”的模式具有权限的角色登录,但它将我连接到公共模式。所以,我删除了公共模式,然后它给了我一个错误:

 ProgrammingError: no schema has been selected to create in
 LINE 1: CREATE TABLE "customers" (
4

1 回答 1

3

您可以通过两种可能的方式进行操作。

首先是指定您的连接

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 = ...
于 2018-08-03T09:32:49.847 回答