def test_content_disposition(self): value = make_content_disposition_header('inline', u'EURO rates.txt') self.assertIn('inline', value) self.assertIn('EURO rates', value) self.assertNotIn('filename*', value) value = make_content_disposition_header('inline', u'"EURO" rates.txt') self.assertIn(r'filename="\"EURO\" rates.txt"', value) value = make_content_disposition_header('attachment', u'€ rates.txt') self.assertEqual(value.lower(), 'attachment; filename="rates.txt"; ' 'filename*=utf-8\'\'%e2%82%ac%20rates.txt')
def test_content_disposition(self): value = make_content_disposition_header('inline', u'EURO rates.txt') self.assertIn('inline', value) self.assertIn('EURO rates', value) self.assertNotIn('filename*', value) value = make_content_disposition_header('inline', u'"EURO" rates.txt') self.assertIn(r'filename="\"EURO\" rates.txt"', value) value = make_content_disposition_header('attachment', u'€ rates.txt') self.assertEqual( value.lower(), 'attachment; filename="rates.txt"; ' 'filename*=utf-8\'\'%e2%82%ac%20rates.txt')
def render_ranking_to_csv(self, request, partial_key): key = self.get_full_key(request, partial_key) data = self.serialize_ranking(key) response = HttpResponse(content_type='text/csv') response['Content-Disposition'] = \ make_content_disposition_header('attachment', u'%s-%s-%s.csv' % (_("ranking"), self.contest.id, key)) writer = unicodecsv.writer(response) writer.writerow(list(map(force_text, self._get_csv_header(key, data)))) for row in data['rows']: writer.writerow(list(map(force_text, self._get_csv_row(key, row)))) return response
def render_ranking_to_csv(self, request, key): data = self.serialize_ranking(request, key) response = HttpResponse(content_type='text/csv') response['Content-Disposition'] = \ make_content_disposition_header('attachment', u'%s-%s-%s.csv' % (_("ranking"), request.contest.id, key)) writer = unicodecsv.writer(response) writer.writerow(map(force_unicode, self._get_csv_header(request, data))) for row in data['rows']: writer.writerow(map(force_unicode, self._get_csv_row(request, row))) return response