我是新来的论坛。
我目前正在使用Odoo 12,在与Java Widget进行Odoo Model通讯时遇到一些问题。一步一步...
1.我正在创建一个显示一些Google图表的窗口小部件,而我发现的唯一方法是在自定义视图中显示QWeb代码并将该窗口小部件分配给Char字段。
2.在开始时,我已经使用rpc实现了一种不错的方法:使用rpc并从模块中获取数据。
3.问题:
我需要在表单中显示两个日期字段,并使用该日期作为我的Google图表的时间间隔:如何在@ api.model
中获取日期值
功能??
该函数只能读取所有表的结果集,当我尝试获取在字段中设置的结果(self.init_date)时,我总是收到“ False”
抱歉,我今天无法发布代码,但是如果没人能给我答案,我将在星期一发布它。
非常感谢你!
答案 0 :(得分:0)
嗨,尝试使用类似这样的东西
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的简单示例
答案 1 :(得分:0)
api.model
装饰器使您可以访问模型的方法,但不能访问记录,因此可以在模型没有记录的情况下调用它们(请参见https://www.odoo.com/documentation/12.0/reference/orm.html#module-odoo.api)。
如果您编写的方法旨在始终接收记录,则只需移除api.model
装饰器。