I have a Posts collection with the following schema.
title: String
content: String
isDraft: Boolean
authorId: String<Ref:User>
The authorId is a reference to a record on the Users collection. When fetching a document from the Posts collection, you can select the fields you want to be returned using Query.select([]). If you want to populate the authorId field with data from the Users collection, the only option you have currently is to make a second request which is not performant.
I suggest a new Query method be made to be able to populate fields. Maybe something like Query.populate(fieldToPopulate1, fieldToPopulate2, ...)? My current workaround is using database.getDocument when I need to populate ONE document and databases.listDocuments when I needed to populate multiple documents.
Is there a more performant way for achieving this?
Are you on Appwrite Cloud?
Yes I am
Starting in version 1.3, Appwrite has built in relationship support to do what you mentioned. Cloud, however is on version 1.1.2 so it doesn't have relationship support. We're working on upgrading Cloud
Okay. Thanks for the info.
[SOLVED] Populate fields in response
Recommended threads
- appwrite pull Tables duplicates all coll...
I encountered a bug when running appwrite pull Tables. Every existing collection in my appwrite.json gets duplicated. One collection ended up appearing three t...
- Opening Project I get "500 Internal Erro...
https://cloud.appwrite.io/console/project-fra-69521af1003b40c342b1/overview/platforms I want open my app now. how to fix this? I can't find solution to fix th...
- restore paused project not working
https://cloud.appwrite.io/console/project-sfo-69b1b841002ca6a07f14/overview/platforms