模型odoo11

时间:2019-02-25 23:33:59

标签: python xml odoo-11

我的模型如下,

class RecipeInformation(models.Model):
    _name = 'model.recipe.information'
    _description = 'recipe and ingredient information'

    recipe_id = fields.Many2one('model.recipe', string='Recipe', required=True)
    ingredient_id = fields.Many2one('model.ingredient', string='Ingredient', required=True)

    quantity = fields.Integer('Quantity', required=True, default=1)
    price = fields.Float('Price', required=True)
    unit_of_measure = fields.Selection([('milligrams', 'Milligrams'), ('grams', 'Grams'),('kilograms', 'Kilograms')],
                                   'Unit of Measure', default='grams',
                                   required=True)

    price_per_UoM = fields.Float('Price/UoM', compute='_calculate_price', store=True)

    Cost = fields.Float('Total Cost')

    @api.depends('price', 'quantity')
    def _calculate_price(self):
        for record in self:
            record.price_per_UoM = record.price / record.quantity
            return record.price_per_UoM

    @api.depends('ingredient_quantity', 'price_per_UoM')
    def _calculate_cost(self):
        for record in self:
            record.Cost += record.ingredient * record.price_per_UoM
            return record.Cost

以及如下的xml树和表单视图

<record id="view_form_recipe_cost" model="ir.ui.view">
        <field name="name">recipe.cost.form.view</field>
        <field name="model">model.recipe.information</field>
        <field name="arch"  type="xml">
            <form string="Recipe Cost form view">
                <sheet>
                    <group>
                        <field name="recipe_id"/>
                        <field name="ingredient_id"/>
                        <field name="quantity"/>
                        <field name="price"/>
                        <field name="unit_of_measure"/>
                        <field name="price_per_UoM"/>
                    </group>
                </sheet>
            </form>
         </field>
    </record>
    <record id="view_tree_recipe_cost" model="ir.ui.view">
        <field name="name">recipe.cost.tree.view</field>
        <field name="model">model.recipe.information</field>
        <field name="arch"  type="xml">
            <tree>
                <field name="recipe_id"/>
                <field name="ingredient_id"/>
                <field name="quantity"/>
                <field name="price"/>
                <field name="unit_of_measure"/>
                <field name="price_per_UoM"/>
            </tree>
         </field>
    </record>

我想做的是获取模型中具有相同配方名称或price_perUoM的每个行条目的所有recipe_id的总和,并可能在另一个拆分视图中查看它们。 / p>

这样我就可以显示所有字段的树状视图 另一个仅显示该特定食谱的食谱名称和总费用

我对ood还是陌生的,我将不胜感激(建议,评论)。

预先感谢

1 个答案:

答案 0 :(得分:0)

有一个属性名称sum =“ Total”,您可以将其应用于xml树视图,该视图显示针对特定列显示的所有记录的总和