Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
3711 Vistas

Where can I find Default code for Create/Read/Update/Unlink methods and how to override them?

Avatar
Descartar
Mejor respuesta

Hi, there,

You can inherit the class and rewrite the 4 methods. 

Try this(use the sale.order module and take create and write methods for example):

class sale_order_improved(models.Model):
_inherit = ['sale.order']
_order = "name desc"

@api.model
def create(self, vals_list):
_logger.info('---- customer created ----')
_logger.info('---- customer created vals_list ----' + str(vals_list))
order_flag = ''
if 'packaging_ids' in vals_list.keys():
for items in vals_list['packaging_ids']:
order_flag = ','.join(map(str, items[2]))
vals_list.update({'order_flag': order_flag})
res = super().create(vals_list)
return res

def write(self, vals_list):
_logger.info('---- customer updated ----')
_logger.info('---- customer updated vals_list ----' + str(vals_list))
order_flag = ''
if 'packaging_ids' in vals_list.keys():
for items in vals_list['packaging_ids']:
order_flag = ','.join(map(str, items[2]))
vals_list.update({'order_flag': order_flag})
res = super().write(vals_list)
_logger.info('---- customer updated res ----' + str(res))
return res

more references:

https://www\.youtube\.com/watch\?v=sOrCZItpw_4

https://www\.youtube\.com/watch\?v=_\-fs_NBeOLI

https://www.youtube.com/watch?v=v8sXFUi1SH4

Hope it is useful.


Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
nov 15
5966
0
nov 15
13
1
oct 22
1880
3
sept 22
13532
3
ago 22
4335