Odoo 12:如何在@api.model 方法中使用表单值
Odoo 12: How to use form values in @api.model methods
我是论坛新人
我目前正在使用 Odoo 12,在将 Odoo 模型与我的 Javascript 小部件进行通信时遇到了一些问题。循序渐进...
1. 我正在创建一个显示一些 Google 图表的小部件,我发现的唯一方法是在自定义视图中显示 QWeb 代码并将小部件分配给 Char 字段。
2. 我一开始就使用 rpc 实现了一个很好的方法:使用 rpc 函数并从模块中获取数据。
3. 问题:
我需要在表单中显示两个日期字段并将该日期用作我的 Google 图表的间隔:如何在我的@api.model
中获取日期值
函数??
该函数只能读取所有table的结果集,当我尝试获取字段中设置的结果(self.init_date)时,我总是收到"False"
抱歉,我今天不能 post 代码,但如果没有人能给我答案,我会在星期一 post 它。
非常感谢!
你好尝试使用这样的东西
from odoo import api,models, fields, _
class MyCustomModel(models.Model):
_name = "my.custom.model"
#... some fields
date1 = fields.Date(string="Date 1")
date2 = fields.Date(string="Date 2")
@api.model
def my_custom_func(self):
# read all data in table
all_records = self.env['my.custom.model'].search([])
for rec in all_records:
print(rec.date1, rec.date2)
这是一个访问所有记录的 date1 和 date2 的简单示例
api.model
装饰器使您可以访问模型的方法但不能访问记录,因此当模型没有记录时可以调用它们(参见 https://www.odoo.com/documentation/12.0/reference/orm.html#module-odoo.api)。
如果您编写的方法旨在始终接收记录,只需删除 api.model
装饰器即可。
我是论坛新人
我目前正在使用 Odoo 12,在将 Odoo 模型与我的 Javascript 小部件进行通信时遇到了一些问题。循序渐进...
1. 我正在创建一个显示一些 Google 图表的小部件,我发现的唯一方法是在自定义视图中显示 QWeb 代码并将小部件分配给 Char 字段。
2. 我一开始就使用 rpc 实现了一个很好的方法:使用 rpc 函数并从模块中获取数据。
3. 问题:
我需要在表单中显示两个日期字段并将该日期用作我的 Google 图表的间隔:如何在我的@api.model
中获取日期值
函数??
该函数只能读取所有table的结果集,当我尝试获取字段中设置的结果(self.init_date)时,我总是收到"False"
抱歉,我今天不能 post 代码,但如果没有人能给我答案,我会在星期一 post 它。
非常感谢!
你好尝试使用这样的东西
from odoo import api,models, fields, _
class MyCustomModel(models.Model):
_name = "my.custom.model"
#... some fields
date1 = fields.Date(string="Date 1")
date2 = fields.Date(string="Date 2")
@api.model
def my_custom_func(self):
# read all data in table
all_records = self.env['my.custom.model'].search([])
for rec in all_records:
print(rec.date1, rec.date2)
这是一个访问所有记录的 date1 和 date2 的简单示例
api.model
装饰器使您可以访问模型的方法但不能访问记录,因此当模型没有记录时可以调用它们(参见 https://www.odoo.com/documentation/12.0/reference/orm.html#module-odoo.api)。
如果您编写的方法旨在始终接收记录,只需删除 api.model
装饰器即可。