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

请问怎么把 hr.employee 这张表里的人名在自己 model 的 tree 视图里显示?

已定时 已固定 已锁定 已移动 Odoo 新手求助
8 帖子 3 发布者 2698 浏览
    • 从旧到新
    • 从新到旧
    • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 火 离线
    火 离线
    火灬炎灬焱灬燚
    写于 最后由 编辑
    #1

    我想把 hr.employee 里的人名显示在自己定义的 model 中的 tree 视图里,试了好多办法都不能实现,求大神指教

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

    请告诉我们你具体做了哪些尝试,谢谢!

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

    1 条回复 最后回复
    0
  • 火 离线
    火 离线
    火灬炎灬焱灬燚
    写于 最后由 编辑
    #3

    就是写了一个方法,从 hr.employee 中获取到 name_related 字段的值,然后把值赋给自己 model 中的字段,但是名字不显示,我用 print 打印什么也没打印出来

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

    把你的代码贴出来,我们更方便帮助你。

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

    1 条回复 最后回复
    0
  • 火 离线
    火 离线
    火灬炎灬焱灬燚
    写于 最后由 digitalsatori 编辑
    #5
    employee = fields.Char(string=u"姓名", compute="_get_employee_name", required=True)
    passive_employee_line = fields.Many2one("employee.passive.evaluate", string=u"Passive Employee Line", required=True)
    
        def _get_employee_name(self):
            for record in self.passive_employee_line:
                for employee in self:
                    employee.employee = record.passive_evaluate.name_related
                    print employee.employee
    
    class EmployeePassiveEvaluate(models.Model):
        _name = "employee.passive.evaluate"
    
        passive_evaluate_id = fields.Many2one("employee.start.evaluate", string=u"Passive Evaluate Id")
        passive_evaluate = fields.Many2one("hr.employee", string=u"被评价人", required=True)
    

    这就是用到的代码

    L 1 条回复 最后回复
    0
  • L 离线
    L 离线
    like_odoo
    在 中回复了火灬炎灬焱灬燚 最后由 编辑
    #6

    @火灬炎灬焱灬燚 你要先看看self.passive_employee_line 里面有没有你想要的值, 再者passive_employee_line字段跟你想要的值有关系 为什么不通过passive_employee_line显示

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

    可以把_get_employee_name函数改成:

    @api.depends('passive_employee_line')
    def _get_employee_name(self):
        self.employee = self.passive_employee_line.passive_evalute.name_related
    

    或者,更简单点,把employee定义为一个related字段:

    employee = fields.Char(related='passive_employee_line.passive_evalute.name_related')

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

    1 条回复 最后回复
    1
  • 火 离线
    火 离线
    火灬炎灬焱灬燚
    写于 最后由 编辑
    #8

    好的,谢谢,我先试试

    1 条回复 最后回复
    0

  • 登录

  • 没有帐号? 注册

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

  • 没有帐号? 注册

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