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

Odoo 9中QWeb报表自定义partner的t-field-options无效求助

解决Odoo 9采购报价单报表中自定义伙伴字段不显示的问题

我看到你已经成功在res.partner模型中添加了Code_TVA和RC字段,表单视图也能正常展示,但采购报价单的QWeb报表配置后却没生效。这个问题主要出在Odoo 9内置contact widget的字段支持限制和XML语法转义上,下面是具体的排查和解决步骤:

核心问题分析

Odoo 9的contact widget默认只渲染系统预设的字段(比如address、name、phone这类),自定义字段无法通过t-field-options的fields参数自动加载。另外你代码里的双重转义字符也容易引发解析错误,需要调整写法。

修正后的解决方案

1. 修改采购报表模板代码

把你的purchase_report.xml替换成下面的代码,手动添加自定义字段的渲染逻辑,不再依赖contact widget的自动加载:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="report_purchasequotation_document" inherit_id="purchase.report_purchasequotation_document">
    <xpath expr="//div[@class='col-xs-5 col-xs-offset-1']" position="replace">
        <div class="col-xs-5 col-xs-offset-1">
            <!-- 保留原contact widget渲染基础联系信息 -->
            <div t-field="o.partner_id" t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
            <!-- 手动渲染自定义字段,添加条件判断避免空值显示 -->
            <p t-if="o.partner_id.Code_TVA">Code TVA: <span t-field="o.partner_id.Code_TVA"/></p>
            <p t-if="o.partner_id.RC">Num RC: <span t-field="o.partner_id.RC"/></p>
            <!-- 保留原VAT字段显示 -->
            <p t-if="o.partner_id.vat">VAT: <span t-field="o.partner_id.vat"/></p>
        </div>
    </xpath>
</template>
</data>
</openerp>

2. 关键调整说明

  • 用单引号包裹t-field-options的内容,避免XML中双引号的转义问题,代码更易读
  • 把自定义字段从widget的fields参数中移除,改为单独的<p>标签渲染,确保能被报表解析
  • 添加t-if条件判断,只有当字段有值时才显示,避免空行影响报表美观

3. 必要的后续操作

  • 更新自定义模块:进入Odoo后台「应用」模块,找到你的自定义模块,点击「更新」按钮,确保新模板被加载
  • 清除浏览器缓存:按Ctrl+Shift+R强制刷新报表页面,避免浏览器加载旧的缓存模板
  • 清除Odoo服务器缓存:在后台「技术」>「用户界面」>「清除缓存」中执行缓存清理,或者重启Odoo服务

额外检查点

  • 确认你的res.partner字段定义无误:你的Partner.py代码逻辑正确,只是建议把类名改为Partner(符合Python命名规范,Odoo 9对类名大小写不严格,但规范写法更易维护)
  • 验证报表继承路径:inherit_id="purchase.report_purchasequotation_document"是Odoo 9采购报价单报表的正确模板ID,无需修改

这样调整后,你的Code_TVA和RC字段就能在采购报价单报表中正常显示了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:51:27