如何在odoo9中创建一个不保存模型中数据的视图?

时间:2016-09-06 04:11:34

标签: openerp odoo-8 odoo-9 odoo-view

我在odoo9工作。现在我需要一个允许用户选择合作伙伴并获得他的销售历史的视图。

现在我创建了一个模型“sale.history”,但它将所选数据保存为db中的记录。我真的不需要这个。

如何为此创建视图。

Please also see this image.

3 个答案:

答案 0 :(得分:0)

此类观看/报告有两种选择。

  1. 使用TransientModel代替Model进行模型继承。数据库中的瞬态模型记录将被频繁运行的cron作业删除。电子邮件PopUp / Wizard就是一个很好的例子。

  2. 为销售订单编写您自己的报告(数据库视图)。实际上已有一份报告:报告/销售/销售分析。如果你想知道它是如何完成的,那么该报告的模型是sale.report

答案 1 :(得分:0)

除了使用TransientModel(旧api)或AbstractModel(新api)之外......您只需将字段的store属性设置为false即可永远不会被持久化到数据库,它只是一个'视野'。

class sale_history(model.Model):
    _name='sale.history'

    partner = fields.Many2one('res.partner', store=False)

合作伙伴字段永远不会保存到数据库

答案 2 :(得分:0)

您可以在模型中的字段上使用store = False(如danidee建议的那样)。

您也可以覆盖模型上的create方法。

问题 - “sale.history”模型的目的是什么?如果它根本不存储任何数据,那么最好不要创建一个针对“res.partner”的新视图,而不是创建一个新模型。