Appwrite :: getLikesByUserIdAndPostId :: error AppwriteException: Invalid `documentId` param: UID m
- 0
- Web
const getLikesByUserIdAndPostId = async( userId: string, postId: string) => { try { console.log("userId ",userId,"postId ",postId); const query = Query.and([ Query.equal("userId", userId), Query.equal("postId",postId) ]) const likes = await db.getDocument( palettegramDB, likesCollection, query ) return !!likes; } catch (error) { console.log("Appwrite :: getLikesByUserIdAndPostId :: error ",error);
}
}
If you're using queries, you need to use listDocuments() instead. getDocument() can only be used if you are fetching a single document that you have the ID of already
I want to check whether userId with postId is present in the collection or not. Thats why I am using Query.and()
So you want to get a list of documents that have a specific userId and postId?
It will only be a single entry, not multiple
That shouldn't matter, it'll just return the one entry if there is only one. If you are doing anything with queries or you do not already know the ID of the document, you will need to use listDocuments() to fetch the data
after using listDocuments() its giving Argument of type 'string' is not assignable to parameter of type 'string[]'. forquery
Wrap your query variable in an array, like this
const likes = await db.listDocuments(palettegramDB, likesCollection, [query]);
ok
Recommended threads
- TablesDB `updateRows` returns `database_...
Hi Appwrite team! I’m seeing a strange issue with TablesDB bulk row updates on a self-hosted Appwrite instance. **Environment** - Appwrite self-hosted `1.9.0` ...
- [SOLVED] Realtime Missing Channels
```js useEffect(() => { let subscription: RealtimeSubscription; async function loadChips() { try { const {rows: chi...
- Update row sheet not loading
After right clicking a row header and click update, the sidebar fails to load (never-ending skeleton)