这是第 9 章访问控制的片段:
如果多个应用程序共享同一个身份验证数据库,您可能需要禁用迁移:
auth.define_tables(migrate=False)
.
我有一个设置,我想让我的每个应用程序共享相同的用户数据库,但有自己的数据库,这些数据库与用户数据库分开。
尽管浏览了访问控制和数据库抽象层文档,但我没有找到如何设置它的示例。
最好我可以告诉我,我可以在每个应用程序中实例化一个指向用户数据库的新 DAL,但我不确定如何将整个 Auth 指向该数据库以及在哪里设置migrate=false
。
类似于应用程序db.py
文件内部的内容:
auth_db = DAL('sqlite://storage.sqlite',
migrate=False)
然后也许,更进一步的变化:
auth = Auth(db, host_names=configuration.get('host.names'))
至:
auth = Auth(auth_db, host_names=configuration.get('host.names'))
我试过了,但没有用。
感谢您澄清在应用程序之间共享身份验证所需的步骤!