在报告odoo中的页脚之前显示内容
display content before footer in report odoo
我正在尝试在 div 页脚之前显示 div "test",我做了以下代码:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="mysale_report" inherit_id="report.external_layout_footer">
<xpath expr="//div[@class='footer']" position="before">
<div class ="test">
fix content
</div>
</xpath>
</template>
</data>
</openerp>
但没有任何显示,事实上,如果我将 'before' 更改为 'after',则 div 测试会出现在页脚内。
为什么我不能在页脚之前显示它的问题。有没有办法在页脚之前显示内容?
谢谢。
如果您使用的是 Debian Jessie,您需要手动安装 wkhtmltopdf 库形式 HERE,因为 debian 存储库中可用的 wkhtmltopdf 版本不支持页眉和页脚。
如果你以前这样做过或者你正在使用其他 OS,试试这个:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="mysale_report" inherit_id="report.external_layout_footer">
<xpath expr="//div[@class='footer']" position="replace">
<div class="footer">
<div class="test">
fix content
</div>
<div class="text-center" style="border-top: 1px solid black;">
<ul t-if="not company.custom_footer" class="list-inline">
<li t-if="company.phone">Phone: <span t-field="company.phone"/></li>
<li t-if="company.fax and company.phone">&bull;</li>
<li t-if="company.fax">Fax: <span t-field="company.fax"/></li>
<li t-if="company.email">&bull;</li>
<li t-if="company.email">Email: <span t-field="company.email"/></li>
<li t-if="company.website">&bull;</li>
<li t-if="company.website">Website: <span t-field="company.website"/></li>
</ul>
<t t-if="company.custom_footer">
<span t-raw="company.rml_footer"/>
</t>
<ul class="list-inline">
<li>Page:</li>
<li><span class="page"/></li>
<li>/</li>
<li><span class="topage"/></li>
</ul>
</div>
</div>
</xpath>
</template>
</data>
希望对您有所帮助!
听说我们还会采用另一种方式来添加我们自己的自定义 header 和页脚,我们无需在 Qweb 视图文件中添加外部和内部布局 header 和页脚。
只是你必须添加
直接访问我们视图文件中的 header 和页脚 class。
对于 header :
<div class="header">
<div class="row">
<div class="col-xs-4">
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % company.logo" style="max-height: 50px;"/>
</div>
<div class="col-xs-6">
</div>
<div class="col-xs-3 pull-right" style="font-size:7px;">
<t t-if="company.street" >
<span style="text-align:right;" t-esc="company.street" /><br/>
</t>
<t t-if="company.street2" >
<span style="text-align:right;" t-esc="company.street2" /><br/>
</t>
<t t-if="company.phone" >
<span style="text-align:right;" t-esc="company.phone" /><br/>
</t>
<t t-if="company.fax" >
<span style="text-align:right;" t-esc="company.fax" /><br/>
</t>
<t t-if="company.email" >
<span style="text-align:right;" t-esc="company.email" /><br/>
</t>
<t t-if="company.website" >
<span style="text-align:right;" t-esc="company.website" /><br/>
</t>
<t t-if="company.vat" >
<span style="text-align:right;" t-esc="company.vat" /><br/>
</t>
</div>
</div>
</div>
页脚:
<div class="footer">
<div class="text-center" style="border-top: 1px solid black;">
<ul class="list-inline">
<li>Page:</li>
<li><span class="page"/></li>
<li>/</li>
<li><span class="topage"/></li>
</ul>
</div>
</div>
您必须在 Qweb 视图文件中 report.html_container
调用的模板之后和 page class
之前添加的代码。
希望我的回答对您有所帮助:)
我正在尝试在 div 页脚之前显示 div "test",我做了以下代码:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="mysale_report" inherit_id="report.external_layout_footer">
<xpath expr="//div[@class='footer']" position="before">
<div class ="test">
fix content
</div>
</xpath>
</template>
</data>
</openerp>
但没有任何显示,事实上,如果我将 'before' 更改为 'after',则 div 测试会出现在页脚内。 为什么我不能在页脚之前显示它的问题。有没有办法在页脚之前显示内容? 谢谢。
如果您使用的是 Debian Jessie,您需要手动安装 wkhtmltopdf 库形式 HERE,因为 debian 存储库中可用的 wkhtmltopdf 版本不支持页眉和页脚。 如果你以前这样做过或者你正在使用其他 OS,试试这个:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="mysale_report" inherit_id="report.external_layout_footer">
<xpath expr="//div[@class='footer']" position="replace">
<div class="footer">
<div class="test">
fix content
</div>
<div class="text-center" style="border-top: 1px solid black;">
<ul t-if="not company.custom_footer" class="list-inline">
<li t-if="company.phone">Phone: <span t-field="company.phone"/></li>
<li t-if="company.fax and company.phone">&bull;</li>
<li t-if="company.fax">Fax: <span t-field="company.fax"/></li>
<li t-if="company.email">&bull;</li>
<li t-if="company.email">Email: <span t-field="company.email"/></li>
<li t-if="company.website">&bull;</li>
<li t-if="company.website">Website: <span t-field="company.website"/></li>
</ul>
<t t-if="company.custom_footer">
<span t-raw="company.rml_footer"/>
</t>
<ul class="list-inline">
<li>Page:</li>
<li><span class="page"/></li>
<li>/</li>
<li><span class="topage"/></li>
</ul>
</div>
</div>
</xpath>
</template>
</data>
希望对您有所帮助!
听说我们还会采用另一种方式来添加我们自己的自定义 header 和页脚,我们无需在 Qweb 视图文件中添加外部和内部布局 header 和页脚。
只是你必须添加
直接访问我们视图文件中的 header 和页脚 class。
对于 header :
<div class="header">
<div class="row">
<div class="col-xs-4">
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % company.logo" style="max-height: 50px;"/>
</div>
<div class="col-xs-6">
</div>
<div class="col-xs-3 pull-right" style="font-size:7px;">
<t t-if="company.street" >
<span style="text-align:right;" t-esc="company.street" /><br/>
</t>
<t t-if="company.street2" >
<span style="text-align:right;" t-esc="company.street2" /><br/>
</t>
<t t-if="company.phone" >
<span style="text-align:right;" t-esc="company.phone" /><br/>
</t>
<t t-if="company.fax" >
<span style="text-align:right;" t-esc="company.fax" /><br/>
</t>
<t t-if="company.email" >
<span style="text-align:right;" t-esc="company.email" /><br/>
</t>
<t t-if="company.website" >
<span style="text-align:right;" t-esc="company.website" /><br/>
</t>
<t t-if="company.vat" >
<span style="text-align:right;" t-esc="company.vat" /><br/>
</t>
</div>
</div>
</div>
页脚:
<div class="footer">
<div class="text-center" style="border-top: 1px solid black;">
<ul class="list-inline">
<li>Page:</li>
<li><span class="page"/></li>
<li>/</li>
<li><span class="topage"/></li>
</ul>
</div>
</div>
您必须在 Qweb 视图文件中 report.html_container
调用的模板之后和 page class
之前添加的代码。
希望我的回答对您有所帮助:)