需求:在用户登录后,将用户登录信息生成一条记录到一个模型中。
代码:
# -- coding: utf-8 --
from odoo import models, fields, api, SUPERUSER_ID
class Users(models.Model):
_inherit = "res.users"
@classmethod
def _login(cls, db, login, password):
user_id = super(Users, cls)._login(db, login, password)
"""自定义代码部分开始"""
data = {
'user': user_id,
'message': u"用户登录了系统"
}
with cls.pool.cursor() as cr:
self = api.Environment(cr, SUPERUSER_ID, {})[cls._name]
self.env['system_log.login_log'].sudo().create(data)
"""自定义代码部分结束"""
return user_id