Update Model instance from database.
RefrashMixin
Update Model instance from database.
Source code in src/ramifice/paladins/refrash.py
| class RefrashMixin:
"""Update Model instance from database."""
async def refrash_from_db(self) -> None:
"""Update Model instance from database."""
metadata = self.__class__.META
# Get collection.
collection: AsyncCollection = Config.MONGO_DATABASE[metadata["collection_name"]]
mongo_doc: dict[str, Any] | None = await collection.find_one(filter={"_id": self.id})
if mongo_doc is None:
err_msg = (
f"Model: `{self.full_model_name()}` > "
+ "Method: `refrash_from_db` => "
+ f"A document with an identifier `{self.id}` is not exists in the database!"
)
logger.critical(err_msg)
raise PanicError(err_msg)
self.inject(
self._LANG_CODE,
metadata["all_descriptor_fields"],
metadata["data_dynamic_fields"],
)
refresh_from_mongo_doc(self, mongo_doc)
|
refrash_from_db()
async
Update Model instance from database.
Source code in src/ramifice/paladins/refrash.py
| async def refrash_from_db(self) -> None:
"""Update Model instance from database."""
metadata = self.__class__.META
# Get collection.
collection: AsyncCollection = Config.MONGO_DATABASE[metadata["collection_name"]]
mongo_doc: dict[str, Any] | None = await collection.find_one(filter={"_id": self.id})
if mongo_doc is None:
err_msg = (
f"Model: `{self.full_model_name()}` > "
+ "Method: `refrash_from_db` => "
+ f"A document with an identifier `{self.id}` is not exists in the database!"
)
logger.critical(err_msg)
raise PanicError(err_msg)
self.inject(
self._LANG_CODE,
metadata["all_descriptor_fields"],
metadata["data_dynamic_fields"],
)
refresh_from_mongo_doc(self, mongo_doc)
|