Odoo 14:如何在注册中添加其他字段,如地址等

odoo 14: how i can add additional fields in SignUp like address etc(Odoo 14:如何在注册中添加其他字段,如地址等)

本文介绍了Odoo 14:如何在注册中添加其他字段,如地址等的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在Odoo注册表单/视图(如Address)中添加一些额外的字段,还想知道它保存注册数据(表)的位置,以便我可以引用/跟踪与用户相关的活动。为了实现这一点,请指导我必须采取的步骤。 问候

推荐答案

您需要继承auth_signup.fields模板才能将该字段添加到注册页。以下代码将street添加到注册字段。

<odoo>
    <template id="signup_fields" inherit_id="auth_signup.fields" name="Auth Signup street form field">
        <xpath expr="//div[last()]" position="after">
            <div class="form-group field-login">
                <label for="street">Street</label>
                <input type="text" name="street" id="street" class="form-control form-control-sm"/>
            </div>
        </xpath>
    </template>
</odoo>

单击submit按钮时,将调用web_auth_signup控制器方法。控制器要做的第一件事是调用do_signup准备值,并调用res.users的signup方法将值写入数据库。

若要保存street字段值,可以重写_signup_with_values方法:

from odoo.addons.auth_signup.controllers.main import AuthSignupHome


class AuthSignupStreet(AuthSignupHome):
    def _signup_with_values(self, token, values):
        context = self.get_auth_signup_qcontext()
        values.update({'street': context.get('street')})
        super(AuthSignupStreet, self)._signup_with_values(token, values)

这篇关于Odoo 14:如何在注册中添加其他字段,如地址等的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Odoo 14:如何在注册中添加其他字段,如地址等

基础教程推荐