Siirry sisältöön
Menu
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Tämä kysymys on merkitty
2 Vastaukset
2361 Näkymät
@api.model
def create(self, vals):
********def****** res = super(ResPartner, self).create(vals)
I am trying to overwrite the create function in the inherited model, 
once I save it
 raise TypeError(f"unsupported operand types in: {self} + {arg!r}")
TypeError: unsupported operand types in: res.partner() + None
Can someone help me to resolve this please?



Avatar
Hylkää
Tekijä Paras vastaus

Thanks for your reply, 

here is my  original code,  which is same as your but no result. Thank you

@api.model
def create(self, vals):
if self.customer_code:
rec_count = self.env['res.partner'].search_count([('customer_code', '=', self.customer_code)])
if rec_count > 0:
raise ValidationError(_("Customer code already exists"))
super(ResPartner, self).create(vals)



Avatar
Hylkää

Try like this
if vals['customer_code']:
rec_count = self.env['res.partner'].search_count([('customer_code', '=', vals['customer_code'])])

Paras vastaus

Hi 

Try this code 

@api.model
def create(self, vals):
if vals.get('code'):
vals['code'] = vals['code'].upper()
return super(ResPartner, self).create(vals)

where code is a field in your model res.partner

https://youtu.be/ZRx3Ll8L7Mo


Hope this Helps

Regards

Avatar
Hylkää