简体   繁体   中英

How do I add MongoDB Realm App Users to Atlas collection?

I'm working on a SwiftUI app that connects to a MongoDB Atlas database (hosted) which is populated and managed by a server. I've created a Realm for my SwiftUI app, and can sucessfully create a user and log-in, but I'm having trouble connecting the created user (found in App Users in the Realm UI) to a user document in my database's User collection. Whats the proper way to do this? Do I need to manually create a user in the collection for any new app users?

@jostell13 - REALM users are not ATLAS DATABASE USERS.

However, this does not mean that REALM users need their own collection for any new app.

When you create a realm app, you specify the ATLAS cluster it is associated with. The best way - in my opinion - to access data from the collection is via FUNCTIONS.

https://docs.mongodb.com/realm/functions/

const plants = context.services.get("mongodb-atlas").db("example").collection("plants");
const plant = await plants.findOne();
return JSON.stringify(plant);

Functions can be called from the REALM app, or you could even create things like HTTPS endpoints so you can interact with functions using simple HTTP requests. https://docs.mongodb.com/realm/endpoints/

The best part about functions is - DEPENDENCIES, You can literally use almost any npm module as a dependency for your functions! (There are some limitations, but this featureset will only be improving in the future) https://docs.mongodb.com/realm/functions/add-external-dependencies/

While I got a lot of useful info from the responses here, the solution I found was not mentioned. The correct way to do this is still to do a manual copy of data from the Realm to the database via a triggered function.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM