Python 如何筛选通用ListView?
我正在使用CBVPython 如何筛选通用ListView?,python,django,django-models,django-templates,django-views,Python,Django,Django Models,Django Templates,Django Views,我正在使用CBV列表视图, 问题是,该视图返回系统上所有注释的列表。 我真正希望的是列表只返回与特定CandProfile(模型)相关联的“注释” notes模型是: class CandidateNote(models.Model): candidate = models.ForeignKey(CandProfile, on_delete=models.CASCADE, related_name='candidatenotes_cand') note_by = model
列表视图
,
问题是,该视图返回系统上所有注释的列表。
我真正希望的是列表只返回与特定CandProfile
(模型)相关联的“注释”
notes模型是:
class CandidateNote(models.Model):
candidate = models.ForeignKey(CandProfile, on_delete=models.CASCADE, related_name='candidatenotes_cand')
note_by = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, on_delete=models.SET_NULL, related_name='candidatenotes_user')
job_note = models.TextField(max_length=3000)
date_added = models.DateTimeField(auto_now_add=True)
我不熟悉Django和查询,不知道如何在基于类的视图中实现这一点……我最初的想法是:
也许我应该修改get\u queryset
方法
任何帮助都将不胜感激。在views.py中
class UserNote(generic.ListView):
template_name = **add your template name here **
context_object_name = 'user_notes'
def get_queryset(self):
return CandidateNote.objects.filter(user__username=self.kwargs['username'])
你可以在html上显示它,
{%用于用户_notes%}
**你的模板**
{%endfor%}您的直觉是正确的-修改
get\u queryset
方法是过滤结果的正确位置。