跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 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 中文社区

  1. 主页
  2. 版块
  3. Odoo 开发与实施交流
  4. 怎么知道domain中可以使用那些对象

怎么知道domain中可以使用那些对象

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

    例如['|','|',('group_ids','in',[g.id for g in user.groups_id]), ('user_id', '=', user.id), '&', ('user_id', '=', False), ('group_ids','=',False),  '|','|', ('company_id','=',False), ('company_id','child_of',[user.company_id.id]),('company_id.child_ids','child_of',[user.company_id.id])]
    user.id表示一个登陆用户的id,在写domain时,如何知道有哪些对象可用,如何写。例如安装了hr模块,想写一个员工的id,应该怎么写:hr_employee.id  或 hr.employee.id都是错的。

    1 条回复 最后回复
    0
    • digitalsatoriD 离线
      digitalsatoriD 离线
      digitalsatori 管理员
      写于 最后由 编辑
      #2

      首先要明白domain是什么,domain实际上就是对‘实体对象‘(或者简单理解为数据库表)的记录的过滤规则。

      所以,与你问得正相反,写domain首先要确定作用的对象(实体对象)是什么。在确认对象后你就可以对该对象的对应字段创建过滤规则,即domain.

      而实体对象的名称及其字段的名称是在模块的类定义中的。比如员工对象的名称就是在类属性_name中定义的_name='hr.employee'
      如果你的domain是对hr.emplyee对象的,那么每个员工的id就是:id

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

      1 条回复 最后回复
      0
      • mrshellyM 离线
        mrshellyM 离线
        mrshelly
        写于 最后由 编辑
        #3

        楼主可能是想问 domain 单元素中, 第三个 值可用的对象. 比如 例子中的 user 对象...

        他可能想知道倒底还有些嘛对象可以使用...

        1 条回复 最后回复
        0
        • mrshellyM 离线
          mrshellyM 离线
          mrshelly
          写于 最后由 编辑
          #4

          可以尝试一下 下面几个对象. 看能不能用.

          self, object, obj, pool, time, cr, context, uid, user

          在这几个中挑个你稀饭的... 😛

          1 条回复 最后回复
          0
          • mrshellyM 离线
            mrshellyM 离线
            mrshelly
            写于 最后由 编辑
            #5

            引用一下 buke 发的内容. 供参考:

            <br />&nbsp; &nbsp; &nbsp; &nbsp; &#039;message_ids&#039;: fields.one2many(&#039;mail.message&#039;, &#039;res_id&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; domain=lambda self: [(&#039;model&#039;, &#039;=&#039;, self._name)],<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; auto_join=True,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; string=&#039;Messages&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; help=&quot;Messages and communication history&quot;),<br />
            



            还要注意  auto_join 参数....

            1 条回复 最后回复
            0

            • 登录

            • 没有帐号? 注册

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