Related Field got invalid lookup: icontains - Django

         Admin.py
@admin.register(models.Student)
class StudentAdmin(admin.ModelAdmin):
list_display = ['first_name', 'last_name', 'city']


@admin.register(models.CourseTake)
class CourseTakeAdmin(admin.ModelAdmin):
list_display = ['student', 'course', 'grade', 'performance']
list_editable = ['grade']
search_fields = ['student']

def student(self, student):
  return student.first_name

       models.py
class Student(models.Model):
first_name = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
date_adimitted = models.DateField(auto_now=True)
address = models.CharField(max_length=255)
city = models.CharField(max_length=255)
state = models.CharField(max_length=255)

def __str__(self) -> str:
    return f'{self.first_name} {self.last_name}'


class CourseTake(models.Model):
student = models.ForeignKey(Student, on_delete=models.CASCADE, related_name='coursetake') #similar to reviews in the product class
course = models.ForeignKey(Course, on_delete=models.CASCADE)
grade = models.DecimalField(max_digits=5, decimal_places=2)

class Meta:
    unique_together = [['student', 'course']]


def __str__(self) -> str:
    return f'{self.student.first_name} {self.student.last_name}'

Панель администратора, где я пытался искать имена

У меня есть строка поиска, которую я хочу использовать для поиска имен студентов, но она продолжает говорить "Related Field got invalid lookup: icontains". Однако, student в search_fields является внешним ключом, и я не знаю, как управлять им, чтобы я мог искать любое имя. 'Request URL: http://127.0.0.1:8000/admin/student/coursetake/?q=kj'

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