Как преобразовать выпадающую колонку выбора в текстовое поле в формах Django

Я пытаюсь сделать форму регистрации пациента в моем проекте, где Django автоматически предоставляет выпадающий список выбора для столбцов внешнего ключа. Как мне превратить эту колонку в текстовое поле, поскольку мне нужно, чтобы пользователь вводил id пациента, а не выбирал из длинного выпадающего списка. Я попробовал кое-что, но это не сработало. Пожалуйста, помогите, если это возможно.

from django import forms
from HMSapp.models import Registration
from django.core.exceptions import ValidationError


class RegistrationForm(forms.ModelForm):
    Pid=forms.CharField()
    class Meta:
        model=Registration
        fields='__all__'  
    def clean_Pid(self):
        patient_id=self.cleaned_data['Pid'] 
        try:
            Pid=Registration.objects.get(id=patient_id)
            return Pid
        except:
            raise ValidationError('Patient id does not exist')

=== использование формы =====

Pid=forms.CharField(widget=forms.Select(attrs={'class':'form-control'}))

=== использование ModelForm ====

widgets= {

            'Pid':forms.Select(attrs={'class':'form-control'})
           
        }
Вернуться на верх