跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 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. odoo16如何写数据的传递?

odoo16如何写数据的传递?

已定时 已固定 已锁定 已移动 未解决 Odoo 新手求助
3 帖子 2 发布者 2.1k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • B 离线
    B 离线
    billchen0769
    写于 最后由 编辑
    #1

    在学习自建模块的时候如何写子模块间数据的传递?
    例如在预约模块中的记录当该记录的状态为确认的时候,在工作模块中如何自动生成一条记录,继续进行下一步的工作?

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

      当在一个模型中的状态为完成时要把前面一步的模型状态也改为完成应该怎样写?
      我是这样处理数据传递的:
      class HospitalAppointment(models.Model):
      _name = "hospital.appointment"
      _inherit = ['mail.thread', 'mail.activity.mixin']
      _description = "预约单"

      diagnose_id = fields.Many2one('hospital.diagnose', string='诊断记录', readonly=True)
      name = fields.Char(string='预约号', required=True, copy=False, readonly=True,
                         default=lambda self: _('New'))
      
      
      def action_confirm(self):
          self.state = 'confirm'
          if self.state == 'confirm':
              # 创建诊断记录
              diagnose_vals = {
                  'patient_id': self.patient_id.id,
                  'gender': self.patient_id.gender,
                  'age': self.patient_id.age,
                  'doctor_id': self.doctor_id.id,
                  'dr_expertise': self.dr_expertise,
                  'readme': self.readme,
                  'date_checkup': self.date_checkup,
                  'note': self.note,
                  # 其他字段的值
              }
              self.env['hospital.diagnose'].create(diagnose_vals)
      
      1 条回复 最后回复
      0
      • J 离线
        J 离线
        Joshua 管理员
        写于 最后由 编辑
        #3

        不太清楚你的模型的结构,但是无论对于什么模型写的方式都是类似的

        //方式一
        recordset.state = 'confirm'
        
        //方式二
        self['xxmodel'].write({'state':  'confirm'})
        

        官方文档ORM API

        【上海先安科技】(joshua AT openerp.cn),欢迎关注公众号:openerp_cn

        1 条回复 最后回复
        0

        • 登录

        • 没有帐号? 注册

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