Odoo 10 - Javascript 查询模型

Odoo 10 - Javascript Query to a Model

我在做:

var callback = new $.Deferred();
new Model('pos.order').query(['invoice_id']).filter([['id', '=', '100']])
    .first().then(function (order) {
        if (order) {
            callback.resolve(order);
        } else {
            callback.reject({code:400, message:'Missing Order', data:{}});
        }
});

它工作正常,returns 一个 Order 对象。但我的问题是我想访问关系对象(many2many,many2one),但订单对象只有他的关系的 ID。例如,如果我想从我刚刚获取的 Order 访问 companyinvoice 对象,我需要执行另一个查询,并且我想获取全部单个查询。

使用下面的js代码调用py中的方法获取你需要的数据。

new Model("pos.order")
    .call("method_in_pos_order_model", [100])
    .then(function (result) {
          // Result is having what you want..
     });

pos.order模型下Py中的方法

@api.model
def method_in_pos_order_model(self,id):
    return self.search([('id','=',id)])

我希望这对你有用。