xml - 添加 forloop 时,Odoo 12 qweb 报告变为空白
问题描述
当我tr
在 qweb Odoo 12 报告中的标签上添加 for 循环时,报告变为空白。我不知道为什么。
代码的错误部分是,
<tr>
<tr t-foreach="o.order_line" t-as="l">
<td style="text-align:left;" colspan="2">
Untaxed Amount
<br/>
Taxes
<br/>
Total
</td>
<td style="text-align:center;">
<span t-if="o.amount_untaxed"
t-field="o.amount_untaxed"/>
<br/>
<span t-if="o.amount_tax"
t-field="o.amount_tax"/>
<br/>
<span t-if="o.amount_total"
t-field="o.amount_total"/>
</td>
<td style="text-align:right;">
المجموع قبل الضرائب
<br/>
الضرائب
<br/>
المجموع النهائي
</td>
<td style="text-align:left;">
Item
<br/>
Description
<br/>
Quantity
</td>
<td style="text-align:center;">
<span t-if="l.product_id.name"
t-field="l.product_id.name"/>
<br/>
<span t-if="l.name"
t-field="l.name"/>
<br/>
<span t-if="l.product_uom_qty"
t-field="l.product_uom_qty"/>
</td>
<td style="text-align:right;">
الصنف
<br/>
الوصف
<br/>
العدد
</td>
</tr>
</tr>
如果需要,此报告的整个代码如下,
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="report_airway_bill">
<t t-call="web.basic_layout">
<t t-foreach="docs" t-as="o">
<div class="page">
<div class="row">
<table id="1" width="100%" class="table table-condensed"
style="border:1px solid black;border-collapse: collapse;">
<tr>
<th width="33%" style="align:left;">
<div class="row" align="left">
<div class="col-3">
<img t-if="o.company_id.logo"
t-att-src="'data:image/png;base64,%s' % o.company_id.logo"
height="100%" width="100%"/>
</div>
</div>
</th>
<th>
</th>
<th width="33%" style="align:right;">
<div class="row" align="left">
<div class="col-3">
<img t-if="o.company_id.logo"
t-att-src="'data:image/png;base64,%s' % o.company_id.logo"
height="100%" width="100%"/>
</div>
</div>
</th>
</tr>
</table>
<table id="2" width="100%"
style="border-collapse: collapse;border:1px solid black;">
<tr>
<tr style="border:1px solid black;border-collapse: collapse;">
<td style="text-align:left;border:1px solid black;border-collapse: collapse;">
طريقة الدفع
<br/>
Type Of Payment
</td>
<td style="border:1px solid black;border-collapse: collapse;">
x
<br/>
y
</td>
<td style="text-align:right;border:1px solid black;border-collapse: collapse;">
COD عند الاستلام
<br/>
Cash عند الارسال
</td>
<td style="text-align:left;border:1px solid black;border-collapse: collapse;">
From :
<span t-if="o.partner_id.name"
t-field="o.partner_id.name"/>
<br/>
Dest :
<span t-if="o.x_studio_field_WJ3co.name"
t-field="o.x_studio_field_WJ3co.name"/>
</td>
<td style="text-align:left;">
Bill Number:
</td>
<td style="text-align:center;">
<strong>
<span t-if="o.x_studio_tracking_number"
t-field="o.x_studio_tracking_number"/>
</strong>
</td>
<td style="text-align:right;">
:رقم البوليصة
</td>
</tr>
</tr>
<tr width="100%">
<tr style="border:1px solid black;border-collapse: collapse;">
<td style="text-align:left;">
Consignee :
<br/>
Address :
<br/>
City :
<br/>
Mobile Number :
<br/>
ID No:
</td>
<td style="text-align:center;" colspan="2">
<span t-if="o.x_studio_field_WJ3co.name"
t-field="o.x_studio_field_WJ3co.name"/>
<br/>
<span t-if="o.x_studio_field_WJ3co.street"
t-field="o.x_studio_field_WJ3co.street">,
</span>
<span t-if="o.x_studio_field_WJ3co.street2"
t-field="o.x_studio_field_WJ3co.street2">,
</span>
<span t-if="o.x_studio_field_WJ3co.phone"
t-field="o.x_studio_field_WJ3co.phone">,
</span>
<span t-if="o.x_studio_field_WJ3co.state_id.name"
t-field="o.x_studio_field_WJ3co.state_id.name">,
</span>
<span t-if="o.x_studio_field_WJ3co.zip"
t-field="o.x_studio_field_WJ3co.zip">,
</span>
<span t-if="o.x_studio_field_WJ3co.country_id.name"
t-field="o.x_studio_field_WJ3co.country_id.name"/>
<br/>
<span t-if="o.x_studio_field_WJ3co.city"
t-field="o.x_studio_field_WJ3co.city"/>
<br/>
<span t-if="o.x_studio_field_WJ3co.mobile"
t-field="o.x_studio_field_WJ3co.mobile"/>
<br/>
<span t-if="o.x_studio_field_WJ3co.x_studio_id_no"
t-field="o.x_studio_field_WJ3co.x_studio_id_no"/>
</td>
<td style="text-align:right;border-right:1px solid black;">
:المستلم
<br/>
:العنوان
<br/>
:المدينة
<br/>
:رقم الجوال
<br/>
:رقم الهوية
</td>
<td style="text-align:left;">
Sender:
<br/>
Address:
<br/>
City:
<br/>
Mobile Number:
<br/>
ID Number :
</td>
<td style="text-align:center;">
<span t-if="o.partner_id.name"
t-field="o.partner_id.name"/>
<br/>
<span t-if="o.partner_id.street"
t-field="o.partner_id.street">,
</span>
<span t-if="o.partner_id.street2"
t-field="o.partner_id.street2">,
</span>
<span t-if="o.partner_id.phone"
t-field="o.partner_id.phone">,
</span>
<span t-if="o.partner_id.state_id.name"
t-field="o.partner_id.state_id.name">,
</span>
<span t-if="o.partner_id.zip"
t-field="o.partner_id.zip">,
</span>
<span t-if="o.partner_id.country_id.name"
t-field="o.partner_id.country_id.name"/>
<br/>
<span t-if="o.partner_id.city"
t-field="o.partner_id.city"/>
<br/>
<span t-if="o.partner_id.mobile"
t-field="o.partner_id.mobile"/>
<br/>
<span t-if="o.partner_id.x_studio_id_no"
t-field="o.partner_id.x_studio_id_no"/>
</td>
<td style="text-align:right;">
المرسل
<br/>
:العنوان
<br/>
:المدينة
<br/>
:رقم الجوال
<br/>
:رقم الهوية
</td>
</tr>
</tr>
<tr>
<tr t-foreach="o.order_line" t-as="l">
<td style="text-align:left;" colspan="2">
Untaxed Amount
<br/>
Taxes
<br/>
Total
</td>
<td style="text-align:center;">
<span t-if="o.amount_untaxed"
t-field="o.amount_untaxed"/>
<br/>
<span t-if="o.amount_tax"
t-field="o.amount_tax"/>
<br/>
<span t-if="o.amount_total"
t-field="o.amount_total"/>
</td>
<td style="text-align:right;">
المجموع قبل الضرائب
<br/>
الضرائب
<br/>
المجموع النهائي
</td>
<td style="text-align:left;">
Item
<br/>
Description
<br/>
Quantity
</td>
<td style="text-align:center;">
<span t-if="l.product_id.name"
t-field="l.product_id.name"/>
<br/>
<span t-if="l.name"
t-field="l.name"/>
<br/>
<span t-if="l.product_uom_qty"
t-field="l.product_uom_qty"/>
</td>
<td style="text-align:right;">
الصنف
<br/>
الوصف
<br/>
العدد
</td>
</tr>
</tr>
</table>
</div>
</div>
</t>
</t>
</template>
</odoo>
现在这些都是我可以提供的信息。
提前致谢。
解决方案
不要堆叠<tr>
节点。只需将其foreach
放入第一个<tr>
<tr t-foreach="o.order_line" t-as="l">
<!-- tds -->
</tr>
推荐阅读
- java - 带有 RetroFit 的致命异常 OkHttp 调度程序
- c# - linq 中的 DateTime.ToString("MM/dd/yyyy") 抛出错误
- api - 查询 graph.microsoft.com 的日历事件时 HTTP 500 过多
- html - ion-scroll 显示滚动条
- python - 如何将变量标识符设置为另一个变量的内容?
- nsis - NSIS 对话中的两个无线电组
- javascript - 使用 javascript 使 div 出现或消失
- ios - 添加 UITableView backgroundView 与 UIView 与 UIButton
- javascript - 一键多动作
- python-3.x - Django 2.0 操作错误:游标“_django_curs_139683611834112_1”不存在