python - 查询集对象不可调用 Django

标签 python django search navbar

我想制作一个搜索栏,在 django 中搜索数据库中的查询,并且到目前为止已经提出了这个:
看法:

class IndexView(LoginRequiredMixin, generic.ListView):

    template_name = 'patients/index.html'
    context_object_name = 'all_patients'

    def get_queryset(self):
        queryset = patient.objects.all()
        query = self.request.GET.get('q')

        if query:
            queryset = queryset.filter(
                Q(First_Name__icontains=query) |
                Q(Surname__icontains=query) |
                Q(DOB__icontains=query)
            ).distinct()
            return queryset

        else:
            return patient.objects.all()
和我模板上的按钮:
<form class="navbar-form navbar-left" role="search" method="get" action="{% url 'patients:index' %}">
  <div class="form-group">
    <input type="text" class="form-control" name="q" value="{{ request.GET.q }}">
  </div>
  <button type="submit" class="btn btn-default">Search</button>
</form>
和模型:
class patient(models.Model):

    TITLE_CHOICES = (
        ('Mr', 'Mr'),
        ('Mrs', 'Mrs'),
        ('Ms', 'Ms'),
        ('Miss', 'Miss'),
    )

    Title = models.CharField(max_length=100, blank=True, choices=TITLE_CHOICES)
    First_Name = models.CharField(max_length=250, default='')
    Surname = models.CharField(max_length=250, default='')
    DOB = models.DateField()
    ...

    def get_absolute_url(self):
        return reverse('patients:patientInfo', kwargs={"pk":self.pk})

    def __str__(self):
        return self.First_Name + " " + self.Surname
我收到错误:

TypeError: 'QuerySet' object is not callable


我不知道我做错了什么,我对 Django 很陌生。

最佳答案

我在添加属性时遇到这个问题,然后是方法,不能调用

@property
def get_queryset(self):

所以我通过删除属性来修复它

关于python - 查询集对象不可调用 Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45987660/

相关文章:

Python/django错误: 'myapp' is not a registered namespace

algorithm - 为最近邻搜索 (NNS) 修改此算法以执行近似 NNS

python - 如何拆分句子,只让 ascii 字符

Python:list.extend 和 list.__iadd__ 之间的区别

Python,jsonpath_ng : Exception: Parse error at 1:4 near token ?(?)

python - 导入错误 : No module named detector_classifier

python - Openshift 上的 Django - 500 内部服务器错误 - wsgi.py 中的错误

python - django 迁移时出错 : "There is no unique constraint matching given keys for referenced table

mysql - 带有数据导入处理程序的 Solr 子文档

python - 使用 Node.js/python 的生产者/消费者 + Worker 架构