我收到错误get()返回了多个BoothDetails -返回2! 。请任何人告诉我该怎么做,而过滤器在self.request.GET.get()中不起作用
答案 0 :(得分:0)
DetailView查询集只能返回单个对象,例如id=search_id
之类。但是您的查询集BoothDetails.objects.all().filter(citizens__Name__icontains=search)
正在基于名称进行过滤,我认为对于一个以上的公民来说这是相似的,因此它会返回多个对象。
这取决于您的逻辑,您要如何进行更具体的查询,暂时可以尝试使用此BoothDetails.objects.all().filter(citizens__Name__icontains=search).first()