コード例 #1
0
 def get(self, request, *args, **kwargs):
     if 'export' in self.request.GET:
         return export_qs_to_file(request,
                                  qs=self.get_queryset(),
                                  **self.export_params)
     if not request.is_ajax():
         self.object_list = []
         context = self.get_context_data()
         return self.render_to_response(context)
     return self.render_to_response()
コード例 #2
0
    def get(self, request, *args, **kwargs):
        if 'export' in self.request.GET:
            return export_qs_to_file(request,
                                     qs=self.get_queryset(),
                                     **self.export_params)
        if request.GET.get('export_to') in ['csv', 'xlsx']:
            data = self.get_json_data()['data']
            return self.export(data,
                               source_name=self.get_export_file_name()
                               or self.get_queryset().model.__name__.lower(),
                               fmt=request.GET.get('export_to'))

        if not request.is_ajax():
            self.object_list = []
            context = self.get_context_data()
            return self.render_to_response(context)
        return self.render_to_response()
コード例 #3
0
    def get(self, request, *args, **kwargs):
        qs = self.get_queryset()

        if request.is_ajax() or 'return_raw_data' in self.request.GET:
            if 'export' in self.request.GET:
                return export_qs_to_file(request, qs=qs, **self.export_params)
            if request.GET.get('export_to') in ['csv', 'xlsx', 'pdf']:
                data = self.get_json_data(qs=qs)
                if isinstance(data, dict) and 'data' in data:
                    data = data['data']
                return self.export(data,
                                   source_name=self.get_export_file_name()
                                   or qs.model.__name__.lower(),
                                   fmt=request.GET.get('export_to'))
            return self.render_to_response(qs=qs)

        self.object_list = qs
        context = self.get_context_data()
        if request.GET.get('debug') == 'true':
            context['json_data'] = self.get_json_data(qs=qs)
        return self.render_to_response(context)
コード例 #4
0
 def get(self, request, *args, **kwargs):
     if 'export' in self.request.GET:
         return export_qs_to_file(request,
                                  qs=self.get_queryset(),
                                  **self.export_params)
     return super().get(request, *args, **kwargs)