我有一个模型,它的表示形式是4个字段的交集,因此它的表示形式类似于MEDICINE-1 period(2000/1),如果我尝试仅针对MEDICINE进行过滤,则它可以工作,但不能工作如果我在搜索中输入了确切的名字,则为MEDICINE-1 period(2000/1),
这是我的模特
def __str__(self):
return (
f'{self.term.course_offer.course} - {self.term} ({self.year}/{self.number})'
还有我的管理员:
class TermYearAdmin(BaseModelAdmin):
search_fields = (
'term__name',
'year',
'term__course_offer__course__nome',
'number'
)
def get_queryset(self, request):
qs = super().get_queryset(request)
return qs.select_related(
'term',
'term__course_offer',
'term__course_offer__course',
).order_by('term__course_offer__course__nome', 'year', 'number', 'term__name')