在Opportunity中,我有两个类别的用户水平和vertical.When垂直用户登录,他/她的名字出现在垂直领域,但当水平用户登录时,他/她的名字也出现在垂直用户领域而不是水平用户领域。我已经在搜索视图中应用了域名,如下所示-
对于水平用户:
<field name="user_id" string ="Salesman Horizontal" domain = "
[('tri_salesteam.s_horizontal','=',True),'|','|','|','|','|','|','|','|',
('parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id','=',uid),('parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id','=',uid),('parent_id.parent_id','=',uid),
('id','in',[uid])]" invisible="1">对于垂直用户:
<field name="sales_vertical" domain = "
[('tri_salesteam.s_horizontal','!=',True),'|','|','|','|','|','|','|','|',
('parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id','=',uid),('parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id.parent_id','=',uid),
('parent_id.parent_id.parent_id','=',uid),('id','in',[uid])]" invisible="1">发布于 2011-11-01 01:17:19
我真的不确定你在问什么,但这里有一个关于调试搜索条件的提示。将断点或调试语句放入服务器代码的orm._search()方法中。在版本6.0.3中,它位于server/bin/osv/orm.py的第4029行,如下所示:
cr.execute('SELECT "%s".id FROM ' % self._table + from_clause + where_str + order_by + limit_str + offset_str, where_clause_params)如果转储where_str的内容,那么可以看到约束是如何被解释的。
发布于 2011-11-29 21:41:23
尝试在域中使用'parent_of‘和'child_of’,而不是使用这么多'|‘条件来搜索parent_id。
https://stackoverflow.com/questions/7885164
复制相似问题