diff --git a/mixer/backend/peewee.py b/mixer/backend/peewee.py index 9a69a1e..1d18184 100644 --- a/mixer/backend/peewee.py +++ b/mixer/backend/peewee.py @@ -193,7 +193,11 @@ def postprocess(self, target): """ if self.params.get('commit'): - target.save() + force_insert = False + target_exists = type(target).select().where(type(target).id == target.id).exists() + if target.id is not None and not target_exists: + force_insert = True + target.save(force_insert=force_insert) return target