# -*- coding: utf-8 -*- from openerp import models, fields import inspect DEFAULT_FIELDS_EXCLUDED = [ 'self', 'function', 'create_uid', '__last_update', 'sequence', 'write_uid', 'write_date', 'tz', 'lang' ] ''' ''' def serialize(self, exclude = []): fields = self.fields_get() data = {} for field in fields: if field in (exclude + DEFAULT_FIELDS_EXCLUDED): continue definition = fields[field] if 'exportable' in definition: continue value = getattr(self, field) if definition['type'] in ('char', 'text', 'html', 'date', 'datetime'): data[field] = value if type(value) is not bool else None if definition['type'] in ('many2one'): data[field] = value.id if value.id else None if definition['type'] in ('one2many', 'many2many'): data[field] = [obj.id for obj in value] if value else [] if definition['type'] in ('integer', 'float', 'boolean', 'selection', 'binary'): data[field] = value return data models.Model.serialize = serialize ''' Users class with token field for manage authentication ''' class res_users(models.Model): _inherit = 'res.users' jwt_token = fields.Char(string = 'JWT Authentication Token');