/ python

Sobre escribir metodos del ORM de Odoo

Odoo v8 viene con una nueva API para extender y crear nuevos modelos, lo cual hace que varie la forma de como sobre escribimos los metodos del ORM (create, write, unlink, etc).

Para que funcionen correctamente se debe trabajar con los decoradores de la API de Odoo.

from openerp import models, api

class MyModel(models.Model):

	_name = 'my.model'

	@api.model
	def create(self)
    	# make something

	@api.multi
    def write(self, values)
    	# make something

	@api.multi
    def unlink(self)
    	# make something

	@api.multi
    def name_get(self):
    	# make something

	@api.model
    def default_get(self, fields_list):
    	# make something

Usando el decorador apropiado para cada función podemos sobreescribir su funcionamiento de acuerdo a nuestras necesidades.