From 5155b3c18494b8a08b9cda4d6d5d0c0725364c4c Mon Sep 17 00:00:00 2001 From: fit2bot <68588906+fit2bot@users.noreply.github.com> Date: Wed, 13 Jul 2022 11:00:12 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Dbluk=5Fcreate=20root?= =?UTF-8?q?=20=E7=BB=84=E7=BB=87=E4=B8=8B=E5=88=A4=E6=96=AD=20(#8581)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: feng626 <1304903146@qq.com> --- apps/orgs/mixins/models.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/orgs/mixins/models.py b/apps/orgs/mixins/models.py index bb98f7a98..3406271b6 100644 --- a/apps/orgs/mixins/models.py +++ b/apps/orgs/mixins/models.py @@ -43,15 +43,19 @@ class OrgManager(models.Manager): def bulk_create(self, objs, batch_size=None, ignore_conflicts=False): org = get_current_org() - org_id = org.id for obj in objs: - obj.org_id = org_id + if org.is_root(): + if not self.org_id: + raise ValidationError('Please save in a organization') + else: + obj.org_id = org.id return super().bulk_create(objs, batch_size, ignore_conflicts) class OrgModelMixin(models.Model): - org_id = models.CharField(max_length=36, blank=True, default='', - verbose_name=_("Organization"), db_index=True) + org_id = models.CharField( + max_length=36, blank=True, default='', verbose_name=_("Organization"), db_index=True + ) objects = OrgManager() sep = '@'