'How can I check if two objects from differente models equal each other in Django?

I have 2 models, one for Students and another for Faculty. I need to print all Students from one specific Faculty. Model for Faculty

class Fakultet (models.Model):
    fakultet_naziv=models.CharField(max_length=30)
    fakultet_adresa=models.CharField(max_length=30)
    fakultet_kontakt_broj=models.CharField(max_length=20)
    fakultet_email_referade=models.EmailField(default='')
    fakultet_website=models.URLField()

    def __str__(self):
        return self.fakultet_naziv

Model for Students

class Student (models.Model):
    student_ime=models.CharField(max_length=30)
    student_prezime=models.CharField(max_length=30)
    student_jmbag=models.CharField(max_length=10, primary_key=True)
    student_adresa=models.CharField(max_length=30, default='')
    student_email=models.EmailField(default='')
    student_fakultet=models.ForeignKey(Fakultet, on_delete=models.CASCADE, default='')
    student_cijepljen=models.BooleanField(default=True)
    student_cjepivo=models.ForeignKey(Cjepivo, on_delete=models.CASCADE, default='')
    student_datum_cijepljenja=models.DateTimeField(default=timezone.now)
    student_datum_isteka_potvrde=models.DateTimeField(default=timezone.now)
    student_prebolio_covid=models.BooleanField(default=False)

    def __str__(self):
        return self.student_jmbag

First i tried this method and it didn't work. It didn't show any students at all.

def fakultetstudent(request):
    fakultet = Fakultet.objects.values_list('fakultet_naziv', flat=True)
    fakultetstudent = Student.objects.filter(student_fakultet__in=fakultet).exists()
    context = {'fakultetstudent' : fakultetstudent}
    return render(request, 'main/fakultetstudent.html', context = context)

After that i tried this and

def fakultetstudent(request):
    fakultet = Fakultet.objects.values_list('fakultet_naziv')
    student = Student.objects.values_list('student_fakultet')
    context = {'faklutet' : fakultet, 'student' : student}
    if fakultet == student:
        return render(request, 'main/fakultetstudent.html', context = context)

and error is: The view main.views.fakultetstudent didn't return an HttpResponse object. It returned None instead.

Pleas help me with this problem.



Solution 1:[1]

student = Student.objects.filter(student_fakultet__fakultet_naziv ='your specific Faculty name')

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Tanveer Ahmad