簡體   English   中英

'模塊'對象不可調用錯誤

[英]'module' object is not callable error

我有以下基於類的視圖,當我對/?id=145提出ajax請求時,出現“模塊”對象無法調用的錯誤

有任何想法嗎 ?

class CityList(ListView):
    template_name = "profile/profile.html"
    model = City

    def render_to_response(self, context, **response_kwargs):

        if self.request.is_ajax() and self.request.GET.get('query'):
            query = self.request.GET.get('query')
            city_filter = [{'name': i.name,
                                'id': i.id}
                                for i in City.objects.filter(
                                name__icontains=query)]
            results = city_filter
            return HttpResponse(json.dumps(results),
                                mimetype='application/json')
        elif self.request.GET.get('id'):
            query = self.request.GET.get('id')
            if query:
                return HttpResponse(json.dumps(list(self.object_list.filter(
                    id=query).values('name', 'id')
                )), mimetype='application/json')

data = serializers.serialize('json', self.object_list.filter(id=query))

完全解決了我的問題 我不確定為什么json.dumps無法正常工作,但是序列化程序卻像下面的代碼一樣工作。

  class CityList(ListView):
        template_name = "profile/profile.html"
        model = City

        def render_to_response(self, context, **response_kwargs):

            if self.request.is_ajax() and self.request.GET.get('query'):
                query = self.request.GET.get('query')
                city_filter = [{'name': i.name,
                                    'id': i.id}
                                    for i in City.objects.filter(
                                    name__icontains=query)]
                results = city_filter
                return HttpResponse(json.dumps(results),
                                    mimetype='application/json')
            if self.request.GET.get('id'):
                query = self.request.GET.get('id')
                if query:

                    data = serializers.serialize('json', self.object_list.filter(id=query))
                    return HttpResponse(data)

暫無
暫無

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

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