提问者:小点点

Flask pdfkit找不到css


我正在尝试从我的新烧瓶应用程序,使用pdf工具包做一个pdf。 我正试图从我的静态目录加载一个css文件,但它似乎不起作用。

我所依赖的基本假设是,模板内链接的css不会被拾取(如这里所述)。

我尝试了不同问题中出现的多种建议,但没有一个奏效:用url_for加载文件路径,用url_for用_EXTERNAL=TRUE加载文件路径,用文字路径。。。

我尝试过的所有解决方案都遇到没有这样的文件或目录:'pdf.css'错误。

如果有任何建议,我会很感激的,我在这里很迷茫。

谢谢!

我的pdf制作功能:

@login_required
def answers_pdf(username):
    # only the owner can download his own pdf
    if username != current_user.username:
        abort(403)
    rendered = render_template('pdf_template.html', user=current_user)

    css = ['static/pdf.css']

    pdf = pdfkit.from_string(
        rendered,
        False,
        css=css
    )

    response = make_response(pdf)
    response.headers['Content-Type'] = 'application/pdf'
    response.headers['Content-Disposition'] = 'attachment; filename=out.pdf'

    return response
My project tree:
├───questionary
│   ├───main
│   │   └───function in routes.py file here
│   ├───static
│   │   └───css here
│   ├───templates
│   │   └───pdf template here
|   run.py -- running the app as a module from here

共1个答案

匿名用户

你试过在HTML中导入css吗?

类似于:

<link rel="stylesheet" href="/questionary/static/pdf.css"/>