mirror of
https://github.com/pretix/pretix.git
synced 2026-05-07 15:34:02 +00:00
Badges: reduce memory usage when placing multiple per page (Z#23125583) (#3472)
Co-authored-by: Raphael Michel <michel@rami.io>
This commit is contained in:
committed by
GitHub
parent
7b5789b110
commit
0969abb460
@@ -20,6 +20,7 @@
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
import logging
|
||||
import tempfile
|
||||
from typing import List
|
||||
|
||||
from django.core.files.base import ContentFile
|
||||
@@ -41,7 +42,10 @@ logger = logging.getLogger(__name__)
|
||||
def badges_create_pdf(event: Event, fileid: int, positions: List[int]) -> int:
|
||||
file = CachedFile.objects.get(id=fileid)
|
||||
|
||||
pdfcontent = render_pdf(event, OrderPosition.objects.filter(id__in=positions), opt=OPTIONS['one'])
|
||||
file.file.save(cachedfile_name(file, file.filename), ContentFile(pdfcontent.read()))
|
||||
file.save()
|
||||
with tempfile.TemporaryFile() as tmp_file:
|
||||
render_pdf(event, OrderPosition.objects.filter(id__in=positions), opt=OPTIONS['one'],
|
||||
output_file=tmp_file)
|
||||
tmp_file.seek(0)
|
||||
file.file.save(cachedfile_name(file, file.filename), ContentFile(tmp_file.read()))
|
||||
file.save()
|
||||
return file.pk
|
||||
|
||||
Reference in New Issue
Block a user