gpt4 book ai didi

odoo - 生成html并在qweb中渲染

转载 作者:行者123 更新时间:2023-12-02 17:07:59 25 4
gpt4 key购买 nike

是否可以在 .py 文件中生成 html 并在 qweb 中呈现?

<openerp>
<data>
<record id="paperformat_time" model="report.paperformat">
<field name="name">Time</field>
<field name="font_size">10</field>
</record>

<report id="time_qweb" model="hr_timesheet_sheet.sheet" string="Time"
report_type="qweb-pdf" name="time.report_time" file="time.report_time" />

<record id="time_qweb" model="ir.actions.report.xml">
<field name="paperformat_id" ref="time.paperformat_time" />
</record>
</data>
</openerp>

qweb

<template id="report_time">
<t t-call="report.html_container">
<t t-foreach="docs" t-as="t">
<span t-esc="t.__compute_html()" />
<div class="page">
<span t-field="t.html_text " />
</div>
</t>
</t>
</template>

.py文件

class Time(models.Model):

_inherit = 'hr_timesheet_sheet.sheet'

html_text = fields.Html(string = 'Html')

@api.one
def _compute_html(self):
html_value = "<h1>TEST</h1>"
html_value += "<h1>TEST 2</h1>"

self.html_text = html_value

例如。

html_value = "<h1> + employee_id.name + "</h1>" 
html_value += "<h1> + employee_id.phone + "</h1>"

现在我需要在 qweb 中呈现 html_value 并放入 <div class="page"> put here html_value </div>

现在我将文本保存在数据库中,有更好的解决方案吗?................................................

最佳答案

是的,如果你有一个包含 html 代码的变量,如果你使用 t-esct-field odoo 会将其打印为文本。

如果你想渲染它使用。 t-raw

  <div t-raw="doc.some_attribute" > </div>

或者

   <t t-raw="doc.some_attribute" > </t>

关于odoo - 生成html并在qweb中渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50750410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com