Django ModelChoiceField возвращает недействительную форму
Я новичок в django и это мой первый проект. У меня проблемы с формой, которую я использую для того, чтобы пользователь выбрал запись из таблицы базы данных для перенаправления на другую форму для редактирования этой записи.
Форма ModelChoiceForm хорошо отображается при загрузке представления и варианты из базы данных отображаются правильно, но когда я отправляю форму, я получаю UnboundLocalError, говорящий, что форма недействительна, и form.errors печатает
<ul class="errorlist">
<li>group
<ul class="errorlist">
<li>This field is required.</li>
</ul>
</li>
<li>group_name
<ul class="errorlist">
<li>This field is required.</li>
</ul>
</li>
</ul>
Вот соответствующая часть моего models.py:
class Groups(models.Model):
group = models.IntegerField(primary_key=True)
group_name = models.CharField(max_length=80)
def __str__(self):
return self.group_name
forms.py:
class GroupForm(forms.ModelForm):
class Meta:
model = Groups
fields = '__all__'
labels = {'group':"ID", 'group_name':"name"}
class SelectGroupForm(forms.Form):
group_id = forms.ModelChoiceField(queryset=Groups.objects.all(), \
to_field_name='group', \
empty_label="Select group")
views.py:
if request.method=="POST":
form = GroupForm(request.POST)
if form.is_valid():
selected_group = form.cleaned_data['group']
redir_url = '../groupform/' + str(selected_group) + '/'
return redirect(redir_url)
else:
print(form.errors)
else:
form = SelectGroupForm(request.POST)
return render(request,'regular-form.html', {'form':form})
В списке ошибок указано, что форма требует ввода всех полей из модели, но мне нужно только то, которое указано на форме.