sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan får man eve til at skrive til forskellige databaser baseret på forskellige URL-parametre og anmodningsværdier?

Med den kommende v0.6 vil Eve naturligt understøtte flere Mongo-forekomster.

Du kan få individuelle API-slutpunkter betjent af forskellige Mongo-instanser:

Og/eller du kan bruge en anden Mongo-instans afhængig af brugeren, der rammer databasen:

En (meget) naiv implementering af brugerforekomster, taget fra dokumenterne :

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()

Også:

Håber dette vil dække dine behov. Den er i øjeblikket under development gren, så du allerede kan eksperimentere/lege med den.



  1. Mongoose:CastError:Cast to ObjectId mislykkedes for værdien [object Object] ved sti _id

  2. MongoDB - Begræns resultaterne af en forespørgsel

  3. azur funktion (node) kalder mongodb afsluttes uden fejl, men intet kommer tilbage fra forespørgslen

  4. Syntaks mangler; før erklæring i mongoexport