我已经在Odoo 11中自定义了crm
模块。
我添加了一些产品线来计算计划的收入,而不必创建报价。
我的问题是一段时间后-大约1天。数据将从Odoo的字段中清除。
我使用store=True
正确设置了字段(我认为!)
另一个可疑的问题是针对Postgresql数据库清除数据的autovacumn
计划的操作。
我该如何确保数据保留,如果vacumming
可用,阻止垃圾收集吗?
crm_lead.py
x_order_line = fields.One2many(
"crm.lead.calc.revenue.line",
"x_order_id",
string="Product Lines",
copy=False,
auto_join=True,
store=True,
)
x_product_id = fields.Many2one(
"product.product",
related="x_order_line.x_product_id",
string="Product",
copy=True,
)
calc_revenue_line.py
class CalcRevenue(models.TransientModel):
"""
This wizard will Calculate the Planned Revenue of the current record in CRM.lead
"""
_name = "crm.lead.calc.revenue.line"
_description = "Line Model for Calculating products"
x_product_id = fields.Many2one(
"product.product",
string="Product",
domain=[("categ_id", "in", ["Accessories", "Final products", "Subscriptions"])],
change_default=True,
ondelete="restrict",
required=True,
store=True,
)
x_product_uom_qty = fields.Float(
string="Quantity",
digits=dp.get_precision("Product Unit of Measure"),
required=True,
default=1.0,
store=True,
)
x_order_id = fields.Many2one(
"crm.lead",
string="Product Lines",
required=True,
ondelete="cascade",
index=True,
copy=False,
store=True,
)
x_price_unit = fields.Float(
"Unit Price", digits=dp.get_precision("Product Price"), default=1.0, store=True
)
答案 0 :(得分:0)
我通过更改
解决了这个问题 class CalcRevenue(models.TransientModel):
收件人:
class CalcRevenue(models.Model):
我相信TransientModel
是造成不保存数据的原因。