Save or update data (upsert)
(self, collection_suffix: str, query: Dict, data: Dict)
| 103 | return db[collection_name] |
| 104 | |
| 105 | async def save_or_update(self, collection_suffix: str, query: Dict, data: Dict) -> bool: |
| 106 | """Save or update data (upsert)""" |
| 107 | try: |
| 108 | collection = await self.get_collection(collection_suffix) |
| 109 | await collection.update_one(query, {"$set": data}, upsert=True) |
| 110 | return True |
| 111 | except Exception as e: |
| 112 | utils.logger.error(f"[MongoDBStoreBase] Save failed ({self.collection_prefix}_{collection_suffix}): {e}") |
| 113 | return False |
| 114 | |
| 115 | async def find_one(self, collection_suffix: str, query: Dict) -> Optional[Dict]: |
| 116 | """Query a single record""" |