From e3b68d0240cc3af1d68f4807ac8eceb8e9c908cd Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 2 May 2025 11:07:32 +0200 Subject: 🚑️ person wizard: fix person creation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ishtar_common/forms_common.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'ishtar_common/forms_common.py') diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index 963527e6f..e1711fe29 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -1152,10 +1152,13 @@ class PersonMergeIntoForm(MergeIntoForm): class SimplePersonForm(ManageOldType, NewItemForm): extra_form_modals = ["organization"] form_label = _("Identity") + base_models = [ + "person_type" + ] associated_models = { "attached_to": models.Organization, "title": models.TitleType, - "person_types": models.PersonType, # already set for subclass + "person_type": models.PersonType, # already set for subclass } format_models = { "precise_town_id": models.Town, @@ -1355,14 +1358,14 @@ class BaseOrganizationPersonForm(forms.ModelForm): class PersonForm(SimplePersonForm): - person_types = forms.MultipleChoiceField( + person_type = forms.MultipleChoiceField( label=_("Person types"), choices=[], required=False, widget=widgets.Select2Multiple(attrs={"cols": True, "full-width": True}), ) TYPES = SimplePersonForm.TYPES + [ - FieldType("person_types", models.PersonType, True) + FieldType("person_type", models.PersonType, True) ] def __init__(self, *args, **kwargs): @@ -1373,7 +1376,7 @@ class PersonForm(SimplePersonForm): dct = self.cleaned_data dct["history_modifier"] = user for key in self.associated_models.keys(): - if key in dct and key != "person_types": + if key in dct and key != "person_type": if not dct[key]: dct.pop(key) else: @@ -1382,7 +1385,7 @@ class PersonForm(SimplePersonForm): dct[key] = model.objects.get(pk=dct[key]) except model.DoesNotExist: dct.pop(key) - person_types = dct.pop("person_types") + person_types = dct.pop("person_type") if not item: new_item = models.Person.objects.create(**dct) else: -- cgit v1.2.3