Как найти одну модель и получить связанные поля из другой модели в Django

Я работаю над проектом на Django, где у меня есть две модели: Profile и submitted_apps. Как мне эффективно связать эти модели так, чтобы я мог получить данные профиля кандидата, такие как имя пользователя, нация, штат, при поиске в модели submitted_apps. Хорошо ли использовать OneToOneFields, как я сделал здесь на всех моделях. Поймите, что модель submitted_apps записывает тех заявителей, которые успешно отправили свою анкету. У меня также есть форма ModelForm с именем Applicant_Search_Form. Код модели профиля приведен ниже

class Profile(models.Model):
applicant = models.OneToOneField(User, on_delete=models.CASCADE, null = True)
surname = models.CharField(max_length=10, null=True)
othernames = models.CharField(max_length=30, null=True)
gender = models.CharField(max_length=6, choices=GENDER, blank=True, null=True)
nation = models.CharField(max_length=10, choices=NATION, blank=True, null=True)
state = models.CharField(max_length=20, null=True)
address = models.CharField(max_length=200, null=True)
phone = models.CharField(max_length=11, null=True)
image = models.ImageField(default='avatar.jpg', upload_to ='profile_images')

Ниже представлен код модели"

class submited_apps(models.Model):
applicant = models.OneToOneField(User, on_delete=models.CASCADE, null=True)
application = models.UUIDField(primary_key = True, editable = False, default=uuid.uuid4)
confirm = models.BooleanField()
date = models.DateTimeField(auto_now_add=True)

def save(self, *args, **kwargs):
     self.application == str(uuid.uuid4())
     super().save(*args, **kwargs)

def __unicode__(self):
    return self.applicant

def __str__(self):
    return f'Application Number: {self.application}-{self.applicant}'

Вот мой код для ModelForm

class Applicant_Search_Form(forms.ModelForm):
class Meta:
    model = submited_apps
    fields = ['applicant']

Вот мой взгляд на поиск

def SearchApplicants(request):
context = {}
searchForm = Applicant_Search_Form(request.POST or None)
if searchForm:
    list_applicants = submited_apps.objects.filter(applicant__iexact=[searchForm['applicant'].value()])

else:
    list_applicants= submited_apps.objects.all()

paginator = Paginator(list_applicants, 5)
page = request.GET.get('page')
paged_listApps = paginator.get_page(page)



context.update({
'list_applicants':paged_listApps,
'searchForm':searchForm,

})

return render(request, 'user/search_applicants_nation.html',context)

Моя проблема в том, что я получаю это сообщение об ошибке при загрузке plage.

Related Field got invalid lookup: icontains
Вернуться на верх