跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 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. 求助name_get 函数怎样用?

求助name_get 函数怎样用?

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

    [glow=red,2,300]'product': fields.many2one('mrp.production','displayName')[/glow]

    在 mrp 模块里边的mrp_production:
    _column={}里添加了一个字段 printed_EN,
    问题实际需求:
    把该字段和mrp_production里面的name字段,
    在数据库里的数据查出,
    拼接成"name-printed_EN"  的格式,
    输出到many2one 的下拉框!

    该怎么样重载 name_get 函数完成这个功能?


    [glow=red,2,300]class ManufacturingOrder(osv.Model):
        _inherit = 'mrp.production'
        def name_get(self, cr, uid, ids, context=None):
            bla bla bla[/glow]

    像这样的重载,该放在哪里,我是在purchase.py里class purchase_order(osv.osv)自定义的many2one类型的字段,

    name_get 函数是该在class purchase_order(osv.osv)这里么?是 mrp.production里?

    1 条回复 最后回复
    0
    • wjfonhandW 离线
      wjfonhandW 离线
      wjfonhand
      写于 最后由 编辑
      #2

      mrp.production里

      你那块代码不是已经是继承 mrp.production了么,怎么还不明白?

      GoodERP -- Odoo China fork

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

        还是有问题!  我重载name_get 但是我只想让我定义的
        [glow=red,2,300]'XXX': fields.many2one ('mrp.production','XXX')[/glow]

        字段 受影响怎么做,有那些方法能解决?
        只影响我定义的字段 , 让下拉框显示 成[glow=red,2,300]"name-printed_ch"[/glow] 数据库两个字段的数据的拼接格式

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

          context里放个 key value进去,name_get 里取出来判断一下,有这个key并等于这个value才返回自定义值,否则super

          GoodERP -- Odoo China fork

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

            ;D谢谢!
            不过这个 context 是放在 我自定义下面这个字段么如:
            [glow=red,2,300]'XXX': fields.many2one ('mrp.production','XXX',context='XXX')[/glow]
            但是在get_name里用 context.get()取不到,又试了试context.key() ,还是取不到

            1 条回复 最后回复
            0

            • 登录

            • 没有帐号? 注册

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