I am trying to update a document which has an array attribute called Upvotes This is where it stores all the users that have upvoted the doc. and I am using this function the handle it.
function upvote(docID: any) {
const promise = appwriteDatabases.updateDocument(DatabaseID,CollectionID,DocumentID,{
'Name': docID.Name,
'Tagline': docID.Tagline,
'Description': docID.Description,
'Link': docID.Link,
'Free': docID.Free,
'LaunchDate': docID.LaunchDate,
'Author': docID.Author,
'Icon': docID.Icon,
'Thumbnail': docID.Thumbnail,
'Authoruid': docID.Authoruid,
// add the user's uid to the Upvotes array
'Upvotes': [...docID.Upvotes, uid]
});
promise.then((response) => {
console.log(response);
console.log(docID)
}, (error) => {
console.log(error);
alert(error.message);
});
}
The error:
UpvoteBtn.2e957bcf.js:1 Uncaught TypeError: e.Upvotes is not iterable
at h (upvoteBtn.2e957bcf.js:1:778)
at HTMLButtonElement.m (upvoteBtn.2e957bcf.js:1:934)
h
Help appreciated!
Can you log and share the value in docId.Upvotes?
Maybe your Upvotes is empty?
the Upvotes array is empty
Recommended threads
- Paused project can't activate
I have failed to reactivate one my projects which had been paused
- Site deployment keeps getting failed
Hi good folks, need a hand with Sites deploy Error on every deploy: Synchronous function execution timed out... duration doesn't exceed 30 seconds [exact log ...
- Unknown attribute type: varchar / text
Since the `string` type is deprecated I tried using `varchar` and `text` in some newer tables, but when running `appwrite pull tables && appwrite types ./src/li...