From 4dc11b0de44d54d725fa5c80ecd1adea9c8a93c9 Mon Sep 17 00:00:00 2001 From: collerek Date: Tue, 30 Mar 2021 17:54:28 +0200 Subject: [PATCH] exclude pk_only models from beeing save_related --- ormar/models/model.py | 2 +- tests/test_queries/test_deep_relations_select_all.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ormar/models/model.py b/ormar/models/model.py index 264c6a2..4eb0c29 100644 --- a/ormar/models/model.py +++ b/ormar/models/model.py @@ -191,7 +191,7 @@ class Model(ModelRow): value = [value] for val in value: - if not val.saved or save_all: + if (not val.saved or save_all) and not val.__pk_only__: await val.upsert() update_count += 1 if follow: diff --git a/tests/test_queries/test_deep_relations_select_all.py b/tests/test_queries/test_deep_relations_select_all.py index 7cef48e..948b81f 100644 --- a/tests/test_queries/test_deep_relations_select_all.py +++ b/tests/test_queries/test_deep_relations_select_all.py @@ -155,4 +155,4 @@ def create_test_database(): async def test_saving_related_fk_rel(): async with database: async with database.transaction(force_rollback=True): - await Report.objects.select_all(follow=True).all() \ No newline at end of file + await Report.objects.select_all(follow=True).all()