Обновление поля внешнего ключа экземпляра модели при создании экземпляра другой модели

У меня есть две модели, Profile и BusinessProfile. К одному бизнес-профилю могут иметь доступ несколько пользователей (через модель профилей, которая связана с моделью пользователей). Я пытаюсь построить модель так, чтобы вошедший в систему пользователь мог создать бизнес-профиль, что я и сделал. Однако у меня возникают проблемы с тем, как обновить поле ForeignKey "Business" в модели профиля с полем BusinessProfile id в качестве значения при создании экземпляра модели BusinessProfile этим пользователем. Кто-нибудь знает, как мне это сделать?

Мой models.py выглядит следующим образом:

class BusinessProfile(models.Model):
    business_name = models.CharField(verbose_name='Business Name', max_length=255)
    business_description = models.TextField(verbose_name='Business Description', max_length=500)
    business_contact_number = models.CharField(verbose_name='Business Contact Number', max_length=32)
    business_email = models.EmailField(verbose_name='Business Email')
    address = AddressField(verbose_name='Business Address')
    creation_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return str(self.business_name) 


class Profile(models.Model): 
    MALE = 'M'
    FEMALE = 'F'
    OTHER = 'O'
    UNSPECIFIED = "U"
    GENDER_CHOICES = [
        (MALE, 'Male'),
        (FEMALE, 'Female'), 
        (OTHER, 'Other'),
        (UNSPECIFIED, 'Prefer not to say'),
    ]

    user = models.OneToOneField(User, on_delete=models.CASCADE)
    phone_number = models.CharField(verbose_name='Mobile Phone Number', max_length=20)
    bio = models.TextField(verbose_name='Bio', max_length=500, blank=True, null=True)
    date_of_birth = models.DateField(verbose_name='Date of Birth', blank=True, null=True)
    first_name = models.CharField(verbose_name='First Name', max_length=255, blank=True, null=True)
    surname = models.CharField(verbose_name='Surname', max_length=255, blank=True, null=True) 
    gender = models.CharField(verbose_name='Gender', max_length=255, choices=GENDER_CHOICES, blank=True, null=True)
    emergency_contact_name = models.CharField(verbose_name='Emergency Contact Name', max_length=255, blank=True, null=True)
    emergency_contact_number = models.CharField(verbose_name='Emergency Contact Number', max_length=20, blank=True, null=True)
    business = models.ForeignKey(BusinessProfile, null=True, blank=True, on_delete=models.SET_NULL) # Upon creation of business profile this should update to the BusinessProfile id just created.
    creation_date = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return str(self.user)

Мое представление для создания BusinessProfile:

class CreateBusinessProfileView(CreateView, NextUrlMixin):
    model = BusinessProfile
    form_class = BusinessProfileForm
    template_name = 'profiles/createbusinessprofile.html'
    default_next = '/'

    def form_valid(self, form):
        form.instance.user = self.request.user
        form.save()
        next_path = self.get_next_url()
        return redirect(next_path)
Вернуться на верх