You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Odoo 15 Qweb报表添加分页:如何在指定位置新建页面?

在Odoo QWeb报表中实现分页的方法

当然可以在QWeb报表中添加分页,你尝试的<div class="page-break"/>方向是对的,但需要配合对应的CSS样式才能生效,以下是具体的实现步骤和修改后的代码:

1. 添加分页样式

在你的报表模板中加入CSS规则,定义分页元素的行为:

.page-break {
    page-break-after: always;
    break-after: page;
}
  • page-break-after: always 是传统分页规则,强制在元素后插入分页
  • break-after: page 是更现代的标准写法,兼容更多打印引擎和浏览器

2. 修改报表模板代码

将分页元素放在你需要分页的位置(即<span t-field="o.my_id"/>之后),完整代码如下:

<template id="report_livro">
    <t t-call="web.html_container">
        <!-- 定义分页样式 -->
        <style>
            .page-break {
                page-break-after: always;
                break-after: page;
            }
        </style>
        <t t-foreach="docs" t-as="o">
            <center>
                <h1>TERMO DE ABERTURA</h1>
            </center>
            <span t-field="o.my_id"/>
            <!-- 插入分页 -->
            <div class="page-break"/>
            <t t-foreach="o.visitas_ids" t-as="v">
                <center>
                    <h1>VISITAS</h1>
                </center>
                <span t-field="v.my_id"/>
                <!-- 如果需要每个VISITAS条目单独分页,可在此处添加同样的分页元素 -->
                <!-- <div class="page-break"/> -->
            </t>
        </t>
    </t>
</template>

注意事项

  • 确保分页元素没有被其他元素的overflow或display属性影响,否则可能无法触发分页
  • 测试时直接使用Odoo的报表打印/导出PDF功能,浏览器的打印预览会正确识别分页规则

内容的提问来源于stack exchange,提问作者Ricardo Silva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 10:15:07