今後のv0.6では、Eveは複数のMongoインスタンスをネイティブにサポートします。
さまざまなMongoインスタンスによって個別のAPIエンドポイントを提供できます:
または、データベースにアクセスするユーザーに応じて、異なるMongoインスタンスを使用できます。
docs から取得したユーザーインスタンスの(非常に)ナイーブな実装 :
from eve.auth import BasicAuth
class MyBasicAuth(BasicAuth):
def check_auth(self, username, password, allowed_roles, resource, method):
if username == 'user1':
self.set_mongo_prefix('MONGO1')
elif username == 'user2':
self.set_mongo_prefix('MONGO2')
else:
# serve all other users from the default db.
self.set_mongo_prefix(None)
return username is not None and password == 'secret'
app = Eve(auth=MyBasicAuth)
app.run()
また:
これがあなたのニーズをカバーすることを願っています。現在、development
にあります
ブランチして、すでに実験/プレイできるようにします。