From aa70204cf270a4529e3c871eb04744e561286080 Mon Sep 17 00:00:00 2001 From: Dmitriy Date: Tue, 29 Jul 2025 14:58:16 +0300 Subject: [PATCH] Update embedded_model.py --- django_mongodb_backend/fields/embedded_model.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/django_mongodb_backend/fields/embedded_model.py b/django_mongodb_backend/fields/embedded_model.py index 4b49a4710..6efc737e7 100644 --- a/django_mongodb_backend/fields/embedded_model.py +++ b/django_mongodb_backend/fields/embedded_model.py @@ -109,10 +109,13 @@ def get_db_prep_save(self, embedded_instance, connection): if embedded_instance is None: return None if not isinstance(embedded_instance, self.embedded_model): - raise TypeError( - f"Expected instance of type {self.embedded_model!r}, not " - f"{type(embedded_instance)!r}." - ) + try: + embedded_instance = self.embedded_model(**embedded_instance) + except TypeError as e: + raise TypeError( + f"Expected instance of type {self.embedded_model!r}, not " + f"{type(embedded_instance)!r}." + ) field_values = {} add = embedded_instance._state.adding for field in embedded_instance._meta.fields: