使用 weasy print 和 django 从 html 模板编写多页 pdf

Writing multiple page pdf from html template using weasy print and django

您好,我正在从包含 table 的 html 模板生成 PDF,其中行数不同,问题是当行数超过一定数量时(12)其余行加上页脚被进一步推到下方并且不会出现在生成的 pdf.How 中我可以让它动态化以便将额外的信息推送到新页面每个至少有一定数量的行,或者有什么方法可以轻松打印移动当前已满数据到另一页

到目前为止,我在模板上有分页符,但它有效。

{% for record in data %}
    <tr>
        <td> {{ record.id}}</td>
        <td> {{ record.date}}</td>
    </tr>
    {% if forloop.counter|divisibleby:12 %}
        <div style="page-break-after: always;"></div>
        div style="page-break-before: always;"></div>
    {% endif %}
{% endfor %}

我整理了一个 repo 来尝试重现您的问题 here,但未能重现。

您的问题中存在一个小的语法错误 - 您在第二个 <div /> 中遗漏了 <,但除此之外,一切看起来都不错。

从我的模板中删除了 body 标签并且它在不使用分页符的情况下工作,weasyprint 将 body 标签中的所有内容限制为一页中的一个文档。 another answer that helped