![](/img/trans.png)
[英]How to use RPC query in JavaScript with read method, for get all rows from table. In Odoo 13?
[英]How to use RPC query in JavaScript with search method in Odoo 11 / 12?
我有以下代碼:
odoo.define('module_name.templates', function(require){
"use strict";
$(document).ready(function() {
var rpc = require('web.rpc');
$('#query').click(getProductBySKU);
function getProductBySKU(){
var domain = [];
var args = [domain];
var res = rpc.query({
model: 'product.template',
method: 'search',
args: args
}).then(function (products) {
console.log(product); });
};
});
});
有了該代碼,它就給了我數字數組,例如[1,2]。 數組的長度等於我擁有的條目數,但根本沒有對象。 如果將域替換為[('id','=',2)]之類的錯誤,則會出現錯誤“ Int對象不可下標”。
所以我的問題是 :是否可以通過搜索方法從數據庫中獲取對象列表,或者至少從指定的DB條目中獲取字段。
我也嘗試了search_read方法。 像這樣:
odoo.define('shift_knob.templates', function(require){
"use strict";
$(document).ready(function() {
var rpc = require('web.rpc');
$('#query').click(getProductBySKU);
function getProductBySKU(){
console.log("Hello world!");
var domain = [('id', '=', 2)];
var args = [domain];
var res = rpc.query({
model: 'product.template',
method: 'search_read',
args: [[], ['name', 'default_code']]
/* args: args */
}).then(function (products) {
console.log(products); });
};
});
});
我得到具有名稱,默認代碼的對象列表,但是我只能使用id作為標識符,而不能使用我想要的字段
更改
[('id', '=', 2)];
至
[ ['id', '=', 2], [] ];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.