
Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn
由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解
本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!
开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号
如果您登录系统碰到问题,请在微信公众号留言:
求助!openerp中project management模块,新的project添加member时的困惑
-
openerp中的project management模块,新的project添加member时,如果用户1已经是其他project的参与者时,我希望在添加member时不再显示这个用户1,就是将已属于其他project的人过滤一下,不再显示。
但不知如何过滤?希望高手指教一下,谢谢! -
这么长时间也没人回个贴。
<br /> <page string="Members"><br /> <field colspan="4" name="members" nolabel="1" context="{'filter_member':'1'}"><br /> <tree string="Members"><br /> <field name="name"/><br /> <field name="user_email"/><br /> <field name="address_id"/><br /> </tree><br /> </field><br /> </page><br />
```
class res_user(osv.osv):
_inherit = 'res.users'
def search(self, cr, user, args, offset=0, limit=None, order=None, context=None, count=False):
if context and context.get('filter_member'):
print 'context:', context
project_obj = self.pool.get('project.project')
project_ids = project_obj.search(cr, user, [])
unavailable_users = []
for project in project_obj.browse(cr, user, project_ids, context):
if project.state in ('open', 'pending','draft') :
for member in project.members:
unavailable_users += [member.id]
available_members = self.search(cr,user, [('id','not in', unavailable_users)])
args.append(('id','in',available_members))
return super(res_user, self).search(cr, user, args, offset=offset, limit=limit, order=order, context=context, count=count)
res_user()
```
版权所有,翻版有理。