fix qryset fields, model update, model delete, model load, qryset update, qruset filter, qryset bulk_load, qryset bulk_update

This commit is contained in:
collerek
2020-10-21 12:14:14 +02:00
parent 64fd9f3cce
commit dbca4367e8
7 changed files with 79 additions and 14 deletions

View File

@ -43,7 +43,6 @@ class Model(NewBaseModel):
if select_related:
related_models = group_related_list(select_related)
# breakpoint()
if (
previous_table
and previous_table in cls.Meta.model_fields
@ -145,7 +144,8 @@ class Model(NewBaseModel):
self.from_dict(new_values)
self_fields = self._extract_model_db_fields()
self_fields.pop(self.Meta.pkname)
self_fields.pop(self.get_column_name_from_alias(self.Meta.pkname))
self_fields = self.objects._translate_columns_to_aliases(self_fields)
expr = self.Meta.table.update().values(**self_fields)
expr = expr.where(self.pk_column == getattr(self, self.Meta.pkname))
@ -165,5 +165,7 @@ class Model(NewBaseModel):
raise ValueError(
"Instance was deleted from database and cannot be refreshed"
)
self.from_dict(dict(row))
kwargs = dict(row)
kwargs = self.objects._translate_aliases_to_columns(kwargs)
self.from_dict(kwargs)
return self