MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie kann Eve basierend auf verschiedenen URL-Parametern und Anforderungswerten in verschiedene Datenbanken schreiben?

Mit der kommenden Version 0.6 wird Eve nativ mehrere Mongo-Instanzen unterstützen.

Sie können einzelne API-Endpunkte haben, die von verschiedenen Mongo-Instanzen bedient werden:

Und/oder Sie können je nach Benutzer, der auf die Datenbank zugreift, eine andere Mongo-Instanz verwenden:

Eine (sehr) naive Implementierung von Benutzerinstanzen, entnommen aus den 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()

Auch:

Hoffe, dass dies Ihre Bedürfnisse abdeckt. Es befindet sich derzeit in der development verzweigen, damit Sie bereits damit experimentieren/spielen können.