微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从另一个模型odoo13读取字段值

如何解决从另一个模型odoo13读取字段值

在这里试图做的是创建一个新的字段维,该维从[stock.move]模型中的字段获取值,这种方法行不通,我不知道为什么,也没有从中获取任何错误python文件xml文件中xpath标记中的唯一错误

这是models.py文件

xx_Custom_Invoice(models.Model):
    _inherit = 'account.move'
    dimension = fields.Char(String="XxX",compute='get_data')

    def get_data(self):
       stock_move = self.env['stock.move']
       for move in self:
          picking = stock_move.picking_id
          if move.id != picking.account_move_ids:
              continue
          for line in move:
              line.update({
                'dimension': line.dimension,})  

这是views.xml

 <record id="xx_account_move_view_inherit" model="ir.ui.view" >
<field name="name">account.move.view.inherit</field>
<field name="model">account.move</field>
<field name="inherit_id" ref="account.view_move_form"/>
<field name="arch" type="xml">
    <xpath expr="/form/sheet/notebook/page/field[@name='invoice_line_ids']/tree/field[@name='product_id']" position="after">
        <field name="dimension"/>
    </xpath>
  </field>
 </record>

解决方法

这里有个问题:

       stock_move = self.env['stock.move']
       for move in self:

stock_move这里是一个空的记录集,因此在for循环中不会发生任何迭代。 您可能使用search()来获取要对其进行操作的记录:

       stock_move = self.env['stock.move'].search(<DOMAIN>)
       for move in self:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。