Javascript 如何为Odoo 14中的字段设置默认值

Javascript 如何为Odoo 14中的字段设置默认值,javascript,python,xml,odoo,Javascript,Python,Xml,Odoo,我添加了一个已归档的公司(它是一个char字段),在创建付款时,我想设置默认值。 创建新付款时,该值未显示在表单视图中。但是,当打印“我的公司”时,我得到了正确的结果。 请问怎么了 class AccountPayment(models.Model): _inherit = "account.payment" @api.model def get_company(self): if self.move_type == 'in_invoice

我添加了一个已归档的公司(它是一个char字段),在创建付款时,我想设置默认值。 创建新付款时,该值未显示在表单视图中。但是,当打印“我的公司”时,我得到了正确的结果。 请问怎么了

class AccountPayment(models.Model):
_inherit = "account.payment"    

 @api.model
    def get_company(self):
        if self.move_type == 'in_invoice':
            my_company = self.env.user.company_id.name
            self.company = my_company

        else:
            self.company = ''

    company = fields.Char(string='Company   ', default=get_company)

谢谢。

您需要返回值。 这是正确的代码

class AccountPayment(models.Model):
     _inherit = "account.payment"    


    def get_company(self):
        if self.move_type == 'in_invoice':
            my_company = self.env.user.company_id.name
            return my_company
        else:
            return None

    company = fields.Char(string='Company Name', default=get_company)

尝试以下操作:company\u id=fields.manyOne('res.company','company',default=lambda self:self.env['res.users'])。browse(self.env.uid).company\u id.id)这将获取当前登录用户的公司并将其分配给该公司field@MuhammadYusuf,我添加的字段是一个char字段,我也不会把它改成many21字段,我还有另一种情况是“动”型。这就是为什么我添加了“get_company”函数,在这里我可以添加条件。谢谢。创建新付款时,“移动类型”值为空,因此结果将始终为空引号。@Tiki,是的,另外,当我尝试使用时,问题仍然存在:if self.payment\u type==“outbound”,如何获得区分供应商和客户付款的正确条件?如果self.move\u type=='in\u invoice',则条件仍然存在问题,未输入if条件;我试过:如果self.payment_type=='outbound',我也会遇到同样的问题。需要帮忙吗?ThanksI在付款类型中总是得到一个“False”值。