微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Python Odoo 中从网站获取输入到 field.integer()

如何解决如何在 Python Odoo 中从网站获取输入到 field.integer()

在网站视图中,

如何获取“nbr1”字段的值并在Python中使用?

请问有人有示例或文档吗?

enter image description here

template.xml

  <template id="biography">
        <t t-call="website.layout">
            <t t-set="title">bio</t>
            <div class="oe_structure">
                <div class="container">
                    <h3 t-field="person.name"/>
                    <p>Last modified: <i t-field="person.write_date"/></p>                  
                    <p>nbr1 : <input type="number" name="nbr1"/></p>
                    <p>Direct copy of nbr1 : <h3 t-field="person.result"/></p>
                </div>              
            </div>
            <div class="oe_structure"/>
        </t>
    </template>

model.py

name = fields.Char()
nbr1 = fields.Integer()
result = fields.Integer(compute="_compute_total")    

@api.depends('nbr1')
def _compute_total(self):
    for record in self:
        record.result = self.nbr1

解决方法

OnChange 和计算字段不一样。

把你的代码改成这个。

@api.depends('nbr1')
def _compute_total(self):
    for record in self:
        record.result = 2*self.nbr1

如果你想让你的计算域存储在数据库中,

result = fields.Integer(compute="_compute_total",store=True)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。