1

Django-CMS を使用していますが、views.py で xhtml2pdf の例を使用しようとすると、次のエラーが発生します。

TemplateSyntaxError 「sekizai.context_processors.sekizai」テンプレート コンテキスト プロセッサを有効にするか、「sekizai.context.SekizaiContext」を使用してテンプレートをレンダリングする必要があります。

Sekizai を使用せずに Django プロジェクトで例を使用しても問題ありません。何か提案はありますか?

ありがとう。

設定.py

THIRD_PARTY_APPS = (
    ...
    'sekizai',
    ...
)

base.html

{% load cms_tags menu_tags sekizai_tags static i18n %}
...

applications/htmltopdf_app views.py

from django.shortcuts import render
from django.http import HttpResponse
from django.template.loader import get_template
from xhtml2pdf import pisa

# Create your views here.
def render_pdf_view(request):
    template_path = 'htmltopdf_app/cv_to_pdf.html'
    context = {'myvar': 'this is your template context'}

    # Create a Django response object, and specify content_type as pdf
    response = HttpResponse(
        content_type='application/pdf'
    )

    response['Content-Disposition'] = 'attachment; filename="report.pdf"'

    # find the template and render it.
    template = get_template(template_path)
    html = template.render(context)

    # create a pdf
    pisa_status = pisa.CreatePDF(
        html,
        dest=response
    )

    # if error then show some funy view
    if pisa_status.err:
        return HttpResponse('We had some errors <pre>' + html + '</pre>')
    return response
4

0 に答える 0