From 3f1d7fa230f7bf0a810870261e9850ea318ef97b Mon Sep 17 00:00:00 2001 From: wangruidong <940853815@qq.com> Date: Wed, 20 Aug 2025 16:00:58 +0800 Subject: [PATCH] perf: Pdf file i18n --- apps/reports/views.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/reports/views.py b/apps/reports/views.py index 31f8866ce..2be075388 100644 --- a/apps/reports/views.py +++ b/apps/reports/views.py @@ -57,8 +57,9 @@ def export_chart_to_pdf(chart_name, sessionid, request=None): print("Url: ", url) with sync_playwright() as p: + lang = request.COOKIES.get(settings.LANGUAGE_COOKIE_NAME) browser = p.chromium.launch(headless=True) - context = browser.new_context(viewport={"width": 1000, "height": 800}) + context = browser.new_context(viewport={"width": 1000, "height": 800}, locale=lang) # 设置 sessionid cookie parsed_url = urlparse(url) context.add_cookies([ @@ -74,6 +75,8 @@ def export_chart_to_pdf(chart_name, sessionid, request=None): page = context.new_page() try: page.goto(url, wait_until='networkidle') + page_title = page.title() + print(f"Page title: {page_title}") pdf_bytes = page.pdf(format="A4", landscape=True, margin={"top": "35px", "bottom": "30px", "left": "20px", "right": "20px"}) except Exception as e: @@ -81,7 +84,7 @@ def export_chart_to_pdf(chart_name, sessionid, request=None): pdf_bytes = None finally: browser.close() - return pdf_bytes, chart_info['title'] + return pdf_bytes, page_title @method_decorator(csrf_exempt, name='dispatch')