Exemple #1
0
 def post(self, *args, **kwargs):
     self.form = CSVErrorsReportForm(self.request.POST)
     if self.form.is_valid():
         start_date = self.form.cleaned_data['start_date']
         stop_date = self.form.cleaned_data['stop_date']
         service_id = self.form.cleaned_data.get('service', None)
         f = cStringIO.StringIO()
         UnicodeWriter(f).writerows(
             (unicode(item) for item in row) for row in self._get_data(
                 start_date=start_date,
                 stop_date=stop_date,
                 service_id=service_id,
             ),
         )
         response = HttpResponse(
             f.getvalue(),
             content_type='application/csv',
         )
         filename = 'report_%s_%s.csv' % (
             start_date.strftime("%Y-%m-%d"),
             stop_date.strftime("%Y-%m-%d"),
         )
         disposition = 'attachment; filename=%s' % filename
         response['Content-Disposition'] = disposition
         return response
     return super(CSVErrorsReport, self).get(*args, **kwargs)
Exemple #2
0
 def get(self, *args, **kwargs):
     self.form = CSVErrorsReportForm(
         initial={
             'start_date': timezone.now().strftime("%Y-%m-%d"),
             'stop_date': timezone.now().strftime("%Y-%m-%d"),
         },
     )
     return super(CSVErrorsReport, self).get(*args, **kwargs)