域名中的调用函数Many2one字段

时间:2017-04-27 09:09:11

标签: openerp odoo-9

是否可以在域Many2one字段中调用functin?

例如:

time = fields.Many2one('my.time', #call function here)

时间字段从数据库表my_time填充。在表格中我有几行:

id name

1  10:00

2  11:00

3  12:00

4. 13:00

在其他表my_booked_time中,我从时间字段插入id(1),现在我需要过滤Many2one"选择所有可用时间(11:00,12:00,13:00)"不是10:00,其中user_id = self.user_id和partner_id = self.partner_id

任何简单的解决方案?

1 个答案:

答案 0 :(得分:2)

在many2one上定义域名,假设my_booked_time已将m2o添加到名为my_time的表time_id

m2o_field = fields.Many2one(...., 
   domain=lambda self: [("id", "not in", self.env['my.booked.time'].search([]).mapped("time_id").ids)])