Form.instance не заполняет поле

У меня есть следующая форма для создания пользователя:

class CreateAccount(UserCreationForm):

   class Meta:
       model = USER
       fields = ['first_name','last_name','username','email','employee_id','is_active','is_staff']

и его вид:

class CreateAccountView(CreateView):

   model = USER
   form_class = CreateAccount
   template_name = 'createaccount.html'

   def form_valid(self, form):

    form.instance.employee_id = Employee.objects.get(username=self.kwargs.get('username'))
    return super().form_valid(form)


   def get_success_url(self):
       return reverse('People')

Я использовал form.instance, чтобы передать ему объект сотрудника, но это не работает и я получаю 'This field is required. ' ошибка, я использовал его точно так же в других приложениях и он работал нормально, есть ли у кого-нибудь идеи, что здесь может быть по-другому?

def post(self, request, pk):
    id = YourModelName.objects.get(id=pk)
    form = ModelForm(request.POST, instance = id)
    if form.is_valid(): 
        form.save()
    return redirect(reverse('templateName'))

def get(self, request, pk, *args, **kwarg,):  
    id = YourModelName.objects.get(id=pk)
    form = QuestionForm(instance = id)
    context = {'form':form}
    return render(request, 'TemplateName', context)

Сначала вам нужно получить id с данными, а затем опубликовать его или обновить, вот как я это делаю

для тех, кому интересно, я удалил два поля, которые я пытался заполнить, из списка полей моей формы, и это сработало

Вернуться на верх