Python 在创建记录时,运行函数在另一个模块(odoo 13)中创建记录

Python 在创建记录时,运行函数在另一个模块(odoo 13)中创建记录,python,odoo-13,Python,Odoo 13,当使用create方法在我的模块中创建记录时,我正在尝试创建一个新公司,但无法使其正常工作: @api.model def创建(自身、VAL): 对于self中的n_记录: 公司信息={ “公司类型”:“公司”, “名称”:n_记录。新公司名称, “vat”:n_record.company_uVAT } record=n_record.env['base.view_partner_form']。创建(公司信息) 返回记录 我犯了这个错误,我无法理解: Odoo服务器错误 回溯(最近一次呼叫

当使用create方法在我的模块中创建记录时,我正在尝试创建一个新公司,但无法使其正常工作:

@api.model
def创建(自身、VAL):
对于self中的n_记录:
公司信息={
“公司类型”:“公司”,
“名称”:n_记录。新公司名称,
“vat”:n_record.company_uVAT
}
record=n_record.env['base.view_partner_form']。创建(公司信息)
返回记录
我犯了这个错误,我无法理解:


Odoo服务器错误
回溯(最近一次呼叫最后一次):
........
........
文件“/usr/lib/python3/dist packages/odoo/http.py”,第339行,在checked_调用中
结果=自身终点(*a,**kw)
文件“/usr/lib/python3/dist packages/odoo/http.py”,第915行,在调用中__
返回自方法(*参数,**kw)
文件“/usr/lib/python3/dist packages/odoo/http.py”,第515行,作为响应
响应=f(*参数,**kw)
文件“/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py”,第1322行,在call\u-kw中
返回self.\u调用\u kw(模型、方法、参数、kwargs)
文件“/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py”,第1314行,输入
返回调用(request.env[model],方法,args,kwargs)
文件“/usr/lib/python3/dist-packages/odoo/api.py”,第385行,在call\u-kw中
结果=_调用_kw_模型_创建(方法、模型、参数、kwargs)
文件“/usr/lib/python3/dist packages/odoo/api.py”,第366行,在“call\u kw\u model\u create”中
如果isinstance(参数[0],映射)else result.id,则返回result.id
AttributeError:“非类型”对象没有属性“id”
我需要帮助理解错误

编辑 我通过将代码更改为:

@api.model
def创建(自身、VAL):
公司信息={
“公司类型”:“公司”,
“名称”:self.new\u公司名称,
“增值税”:自公司\增值税
}
记录=self.env['res.partner'].create(公司信息)
返回记录
但我现在遇到了这个错误:

出了问题!联系人需要姓名

我不确定,但我想我传递的名字是:self.new\u company\u name,

编辑2 (谢谢@niyagraphy)

'name':self.new_company_name,
更改为
'name':VAL['new_company_name']


公司正在创建中,但表单被卡住,无法保存。

多亏了奥多表单的@niyagraphy和@Prakash

    @api.model
    def create(self, vals):
        company_info ={
            'company_type': 'company',
            'name': vals['new_company_name'],
            'vat': vals['company_vat'],
        }
        self.env['res.partner'].create(company_info)

        result = super(my_class_name, self).create(vals)
        return result