
Just curious, I have an event on every update for my databases that basically checks if something is a searchable document (they have the attribute search) and then it puts all the searchable attributes into a JSON array of the searchable stuff and is supposed to update it (so they are always kept up to date automatically) but that is not seemingly working
def main(context):
# Why not try the Appwrite SDK?
client = (
Client()
.set_endpoint("https://appwrite.pva.ai/v1")
.set_project(os.environ["APPWRITE_FUNCTION_PROJECT_ID"])
.set_key(os.environ["APPWRITE_API_KEY"])
.set_self_signed(True)
)
database = Databases(client)
context.log("UpdateSearchColumns function called")
document = context.req.body
database_id = document.get("$databaseId")
collection_id = document.get("$collectionId")
document_id = document.get("$id")
searchable = {}
if collection_id in searchable_collections:
# Get keys of dict and compare to searchable_attributes
# then take all searchable attributes, combine them into one object, and update the document with search object as a JSON string version
# of the attributes in one object
searchable = {}
for key in document.keys():
if key in searchable_attributes and document.get("key", None) is not None:
searchable[key] = document[key]
searchable = json.dumps(searchable)
if document.get("search", None) != searchable:
context.log(f"Updated Document: {json.dumps(document, indent=4)}")
database.update_document(database_id, collection_id, document_id, { "search": searchable })
return context.res.empty()
It should work, and it says updated, but the document has no text in it's search attribute

Nevermind, I was trying to get document.get("key")
instead of key

[SOLVED] Updating an attribute in an event for the updated document?
Recommended threads
- custom requirements.txt file
How do I specify a custom requirements.txt file when creating a serverless function through the Appwrite console?
- CSV Import not working
I am running 1.7.4, trying the sample book csv import. I get a pop up saying import started and then a quick follow up saying completed. Nothing ever appears ...
- Is my approach for deleting registered u...
A few weeks ago, I was advised not to use the registered users' id in my web app. Instead, I store the publicly viewable information such as username and email ...
