• 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

如何判断某元素存在于

已定时 已固定 已锁定 已移动 已解决 Odoo 开发与实施交流
6 帖子 2 发布者 337 浏览
    • 从旧到新
    • 从新到旧
    • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • S 离线
    S 离线
    steven
    写于 最后由 编辑
    #1

    请教:
    我在class里创建了一个many2many字段(即: participator_ids“参与人”可以从所有注册用户里多选)
    92fd37d0-ff9e-4f73-bae8-c407c3e2415d-image.png
    现在,我需要判断目前登录的用户是否存在于participator_ids“参与人”这个字段里。如果存在,就展示在页面筛选器“我参与的任务”里。
    ecc3fb57-d5e8-41f3-8576-f5185c86a249-image.png
    但这条语句中的domain可能不对,python提示无法解释。
    请问该如何实现这个功能?

    digitalsatoriD 1 条回复 最后回复
    0
  • digitalsatoriD 离线
    digitalsatoriD 离线
    digitalsatori 管理员
    在 中回复了steven 最后由 编辑
    #

    @Steven 可以用

    [('participator_ids', 'in', uid)]
    

    把uid 放在元组的第一个元素是不对的。系统对x2M 类型字段会自动反转过滤条件的。

    【上海先安科技】(tony AT openerp.cn)

    S 1 条回复 最后回复
    0
  • digitalsatoriD 离线
    digitalsatoriD 离线
    digitalsatori 管理员
    在 中回复了steven 最后由 编辑
    #2

    @Steven 可以用

    [('participator_ids', 'in', uid)]
    

    把uid 放在元组的第一个元素是不对的。系统对x2M 类型字段会自动反转过滤条件的。

    【上海先安科技】(tony AT openerp.cn)

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    steven
    在 中回复了digitalsatori 最后由 编辑
    #3

    @digitalsatori 在 如何判断某元素存在于 中说:

    @Steven 可以用

    [('participator_ids', 'in', uid)]
    

    把uid 放在元组的第一个元素是不对的。系统对x2M 类型字段会自动反转过滤条件的。

    谢谢!
    按照您所说的,反转过滤条件,模块升级没有报错。但在“应用”界面内点击过滤菜单,运行过程中出现了问题。
    “
    File "C:\Program Files\Odoo 14.0.20210827\server\odoo\osv\expression.py", line 1010, in __leaf_to_sql
    raise ValueError("Invalid domain term %r" % (leaf,))
    Exception
    ”
    若方便,还请赐教。

    digitalsatoriD 1 条回复 最后回复
    0
  • digitalsatoriD 离线
    digitalsatoriD 离线
    digitalsatori 管理员
    在 中回复了steven 最后由 编辑
    #4

    @steven 在 如何判断某元素存在于 中说:

    @digitalsatori 在 如何判断某元素存在于 中说:

    @Steven 可以用

    [('participator_ids', 'in', uid)]
    

    把uid 放在元组的第一个元素是不对的。系统对x2M 类型字段会自动反转过滤条件的。

    谢谢!
    按照您所说的,反转过滤条件,模块升级没有报错。但在“应用”界面内点击过滤菜单,运行过程中出现了问题。
    “
    File "C:\Program Files\Odoo 14.0.20210827\server\odoo\osv\expression.py", line 1010, in __leaf_to_sql
    raise ValueError("Invalid domain term %r" % (leaf,))
    Exception
    ”
    若方便,还请赐教。

    如果你确实没有写错的话。升级模块后,有没有刷新应用界面。

    【上海先安科技】(tony AT openerp.cn)

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    steven
    在 中回复了digitalsatori 最后由 steven 编辑
    #5

    @digitalsatori 在 如何判断某元素存在于 中说:

    @steven 在 如何判断某元素存在于 中说:

    @digitalsatori 在 如何判断某元素存在于 中说:

    @Steven 可以用

    [('participator_ids', 'in', uid)]
    

    把uid 放在元组的第一个元素是不对的。系统对x2M 类型字段会自动反转过滤条件的。

    谢谢!
    按照您所说的,反转过滤条件,模块升级没有报错。但在“应用”界面内点击过滤菜单,运行过程中出现了问题。
    “
    File "C:\Program Files\Odoo 14.0.20210827\server\odoo\osv\expression.py", line 1010, in __leaf_to_sql
    raise ValueError("Invalid domain term %r" % (leaf,))
    Exception
    ”
    若方便,还请赐教。

    如果你确实没有写错的话。升级模块后,有没有刷新应用界面。

    问题终于解决了,原来我犯一个低级错误,在domain="[('participator_ids','in','uid')]"里将uid两边的单引号去掉后,程序恢复了正常。

    digitalsatoriD 1 条回复 最后回复
    0
  • digitalsatoriD 离线
    digitalsatoriD 离线
    digitalsatori 管理员
    在 中回复了steven 最后由 编辑
    #6

    @Steven 感谢你能更新信息

    【上海先安科技】(tony AT openerp.cn)

    1 条回复 最后回复
    0
  • digitalsatoriD digitalsatori 将这个主题转为问答主题,在
  • digitalsatoriD digitalsatori 将这个主题标记为已解决,在

  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。