2017-08-08 11 views
1

私がやってるの:それは正常に動作し、注文オブジェクトを返しますOdoo 10 - Javascriptのクエリモデル

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:{}}); 
     } 
}); 

。しかし、私の問題は、関係オブジェクト(many2many、many2one)にアクセスしたいのですが、注文オブジェクトには関係のIDしかありません。たとえば、私がちょうどフェッチした からcompanyまたはinvoiceオブジェクトにアクセスしたいのであれば、私は別のクエリを実行する必要があり、すべてを1つのクエリで取得したいと考えています。

答えて

1

下記の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)]) 

私はこれがあなたのために働くことを願っています。

+1

は私が期待したものではありませんが、動作します:D、ありがとう。 –