Odoo - 不通过 _rec_name 过滤 Many2one

问题描述

我想过滤 m2o 字段,但不是名称 (_rec_name)。

class LecturerWorkday(models.Model):
    _name = 'lecturer.workday'
    _rec_name = 'lecturer_id'
  
    name = fields.Selection([('sunday','Sunday'),('monday','Monday'),('tuesday','Tuesday'),('wednesday','Wednesday'),('thursday','Thursday'),('friday','Friday'),('saturday','Saturday'),],default='sunday',string="Workday",required=True)
    lecturer_id = fields.Many2one('school.lecturer',string="Lecturer Name",invisible=True)

class SchoolLecturer(models.Model):
    _name = 'school.lecturer'

     name = fields.Char(string="Lecturer Name",required=True)
     workday_id = fields.Many2one("lecturer.workday",string="Workday ID")

 class LecturerTimeoff(models.Model):
    _name = "lecturer.timeoff"

    lecturer = fields.Many2one('school.lecturer',string="Lecturer Name")
    day_m2o = fields.Many2one('lecturer.workday',string="Lecturer Workdays")
    reason  = fields.Char("Time off Reason")

    @api.onchange('lecturer')
       def get_lecturer_workday(self):
         day_obj = self.env['lecturer.workday'].search([('lecturer_id','=',self.lecturer.id)]).mapped('name')
         day_list = []
            for rec in day_obj:
                day_list.append(rec)
                res = {}
                res['domain'] = {'day_m2o': [('name',day_list)]}
                return res
                print (res)

我的问题是:

  1. 当我选择讲师姓名时,day_m2o 应显示所选讲师姓名的工作日。我一直在尝试按上述方法计算,但结果仍然显示讲师姓名,而不是工作日。
  2. 每当我点击还没有工作日的新讲师姓名时,@api.onchange 似乎并没有立即更新结果。如何解决这个问题?

感谢您的帮助

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)