簡體   English   中英

查詢集對象不可調用 Django

[英]queryset object not callable Django

我想制作一個搜索欄,在 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

我收到錯誤:

類型錯誤:“QuerySet”對象不可調用

我不知道我做錯了什么,我對 Django 很陌生。

我在添加屬性時遇到這個問題,然后是方法,不能調用

@property
def get_queryset(self):

所以我通過刪除屬性來修復它

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM