move back instance creation before query in create to catch errors early
This commit is contained in:
@ -337,15 +337,15 @@ class QuerySet:
|
||||
expr = self.table.insert()
|
||||
expr = expr.values(**new_kwargs)
|
||||
|
||||
instance = self.model(**kwargs)
|
||||
pk = await self.database.execute(expr)
|
||||
|
||||
pk_name = self.model.get_column_alias(self.model_meta.pkname)
|
||||
if pk_name not in kwargs and pk_name in new_kwargs:
|
||||
kwargs["pk"] = new_kwargs[self.model_meta.pkname]
|
||||
instance.pk = new_kwargs[self.model_meta.pkname]
|
||||
if pk and isinstance(pk, self.model.pk_type()):
|
||||
kwargs[self.model_meta.pkname] = pk
|
||||
instance.pk = pk
|
||||
|
||||
instance = self.model(**kwargs)
|
||||
# refresh server side defaults
|
||||
instance = await instance.load()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user