过去几天我一直在尝试在XML域上创建域过滤器,但目前还没有取得任何积极成果。
我的表单上有一个与函数相关的字段
def _return_reviewer_exempt(self, cr, uid, ids, field_name, arg, context=None):
dr_obj = self.browse(cr,uid,ids,context)
for dr in dr_obj:
id = dr.id
drre_obj = self.pool.get('drre').search(cr,uid,[('document','=',id)],context=context)
result = {}
res = list()
i = 0
drre_obj = self.pool.get('drre').browse(cr,uid,drre_obj,context=context)
for drre in drre_obj:
#boo = True
res.append(drre.user.id)
i += 1
context["list_users"] = res
result[id] = i
return result
在XML方面,我正在尝试创建的域位于字段
<field name="content_lead_review_id" domain="[('groups_id','=','DRLR'),'|',('id','not in',(context.get('list_users')))]" />
当我在xml中使用静态值时,我会看到结果,例如:
<field name="content_lead_review_id" domain="[('groups_id','=','DRLR'),'|',('id','not in',('3'))]" />
这让我相信在来自Python Context的XML中生成列表的方式有问题。你能告诉我哪里出错了。
答案 0 :(得分:0)
你可以试试这个,它可能适合你。
<field name="content_lead_review_id" domain="[('groups_id','=','DRLR'),'|',('id','not in',str(context.get('list_users')))]" />