Odoo V10-检索相同模型的先前记录的值

时间:2018-10-12 09:52:43

标签: python odoo

这是我用于计算字段的函数:

# Fonction qui récupère la valeur du champs booléen inscription de l'année précédente
    @api.depends('half_pension')
    def _retrieve_halfpension_previous(self):
        for record in self:
            if record.half_pension:
                record.half_pension_previous = record.half_pension

这是我的字段:

half_pension = fields.Boolean(string='Catering', copy=False)
half_pension_previous = fields.Boolean(string='previously registered', copy=False, store=False,
                                       compute='_retrieve_halfpension_previous')

这是我的观点:

<!-- Vue Tree enfants scolarisés cantine-->
    <record model="ir.ui.view" id="halfpension_view_tree">
        <field name="name">halfpension.view.tree</field>
        <field name="model">ecole.partner.school</field>
        <field name="arch" type="xml">
            <tree editable="bottom" default_order="half_pension_id" string="school_halfpension_tree">
                <field name="partner_id" readonly="1" />
                <field name="half_pension" />
                <field name="half_pension_id" />
                <field name="school_name_id" />
                <field name="half_pension_begin_date" />
                <field name="half_pension_end_date" />
                <field name="half_pension_text" />
                <field name="half_pension_previous" />
                <field name="default_school_year" invisible="1" />
            </tree>
        </field>
    </record>

当前,我在字段“”中获得了“”相同的值。但是,我想检索同一伙伴的前一个记录的值,而不是当前记录。怎么做 ?谢谢

1 个答案:

答案 0 :(得分:0)

您可以将记录保存到伙伴字段中,以便能够跟踪该伙伴的最后一条记录。您将需要根据所需事件更改合作伙伴中的记录。例如,在通过覆盖ecole.partner.school模型的create方法创建的新记录上,将创建的记录附加为伙伴的最后一条记录。

在此之后,将half_pension_previous字段的值与伙伴附加记录half_pension字段相对应