我正在使用 redquerybuilder 版本 0.6 为我的应用程序创建一个查询构建器。我下载了存档并根据文档添加了脚本。我有一个日期字段来选择和查询数据库。当我从字段列表中选择日期字段时,值文本会自动填充当前日期值,但参数仍为null。同样当我将所选字段从日期更改为任何其他字段时,当前字段的参数将更新为日期值。有没有办法将date字段的默认值设置为'null'。我的代码如下:
enter code here
RedQueryBuilderFactory.create({
meta : {
tables : [ {
"name" : "artefacts_log2timeline",
"label" : "Log2Timeline",
"columns" : [ {
"name" : "timezone",
"label" : "Timezone",
"type" : "STRING"
}, {
"name" : "datetime",
"label" : "date",
"type" : "DATE",
"default" : "",
"size" : 10
}, {
"name" : "source",
"label" : "Source",
"type" : "STRING",
//"editor" : "SELECT"
}]
},
onSqlChange : function(sql, args) {
var out = sql + '\r\n';
var query_args = '';
for (var i = 0; i < args.length; i++) {
//console.log('Arg'+args);
//console.log('Sql'+sql);
var arg = args[i];
if (arg == null || arg == '')
arg = ''
if(i != 0){
query_args+=','
/*if(i > 0){
if(arg.toString().indexOf('GMT') > -1 || arg == '')
arg = ''
}*/
}
//console.log(sql)
out += 'arg' + i;
if (arg != null) {
out += ' type=' + Object.prototype.toString.call(arg) + ' toString=' + arg;
} else {
out += ' null';
}
out += '\r\n';
query_args+='args'+i+'='+arg
}
document.getElementById("debug").value = out;
document.getElementById("args").value= query_args;
console.log(document.getElementById("args").value)
//console.log(document.getElementById("debug").value);
},
enumerate : function(request, response) {
if (request.columnName == 'CATEGORY') {
response([{value:'A', label:'Small'}, {value:'B', label:'Medium'}]);
} else {
response([{value:'M', label:'Male'}, {value:'F', label:'Female'}]);
}
}]
},'', '');
提前致谢。
答案 0 :(得分:1)
请你在这里试试0.7.0.beta:http://0-7-0.redquerybuilder.appspot.com/?
这里有两个错误/错误: https://github.com/salk31/RedQueryBuilder/issues/19 https://github.com/salk31/RedQueryBuilder/issues/20
它们都应固定在0.7.0
注意:此版本只进行了自动化测试。那里有一个重构和一个新的编号编辑器......