对于odoo中的res.partner,create方法无法正常工作?

时间:2016-02-02 10:18:30

标签: python orm openerp

当我在[发票>中手动创建记录时客户]合作伙伴记录正确创建,默认的'customer'= True(布尔字段)位于Sales&购买客户页面表格。问题是我正在尝试用下面的代码创建记录,但是没有创建res.partners作为'customer'= True。

class RFID_users(osv.osv):
    _name = 'res.users'
    _inherit = ['res.users','mail.thread']

    def create(self,cr,uid,vals,context=None):

        if not context:
            context = {}
        if vals.get('login',False):
            vals.update({'email':vals.get('login')})
            model_obj = self.pool.get('ir.model.data')
            group = model_obj.get_object_reference(cr,uid,'rfid_ticketing','group_user_customer')
        if len(group) == 2:
            group_id = group[1]
        if context.get('default_user_type',False) == 'ticket_user':
           vals.update({'in_group_'+str(group_id):True})

        return super(RFID_users,self).create(cr,uid,vals,context=context)
        return self.pool.get('res.partner').create(cr,uid, 'customer':True,'name':vals['name'], "mobile":vals['mobile_user'], 'email':vals['login']},context=context)
        return objz.create(cr,uid,new_valsz,context=context)

供参考: 记录正在创建,但'客户'变为假。如果我们手动创建记录,默认情况下是真的.P.S专注于这一行......

    return self.pool.get('res.partner').create(cr,uid,{'customer':True,'name':vals['name'], "mobile":vals['mobile_user'],
    'email':vals['login']},context=context)

任何帮助?感谢

1 个答案:

答案 0 :(得分:1)

你应该统一你的创造,这应该做的诀窍:

    vals.update({'customer':True,'name':vals['name'], 'mobile':vals['mobile_user'], 'email':vals['login']})
    return super(RFID_users,self).create(cr,uid,vals,context=context)

约         return objz.create(cr,uid,new_valsz,context = context)

这根本不起作用,因为你没有声明什么是objz和new_valsz,因此只需要删除或评论它。