我正在尝试使用 Thinky ORM 检查表中的一个字段是否存在(区分大小写)。如果没有 Thinky ,我只需使用RethinkDB简单过滤匹配操作匹配字段:
// This makes my variable insensitive.
let myFieldInsensitive = '(?i)^' +myFieldSensitive`enter code here`+'$';
// Filter by matching myFieldInsensistive.
r.table('myTable').filter(r.row('myField').match(myFieldInsensitive))
.run(myConnection, function (err, result) {
console.log(result.length); // returns 1 if myFieldInsesitive was found
})
此代码将检查 myTpecificField 是否确实存在于 myTable (区分大小写)。
现在,我正在尝试使用 Thinky 执行相同的匹配,但此 ORM 不支持此语法:
let myFieldInsensitive = '(?i)^' +myFieldSensitive+'$';
myModel.filter(('myField').match(myFieldInsensitive)})
.run().then((result) => {
console.log(result.length); // should return 1 if myFieldInsesitive was found, but this returns always empty array
})
是否有人知道如何使用 Thinky 匹配数据?
答案 0 :(得分:2)
终于做到了!我已经包含 thinky.r :
let r = thinky.r;
而不是写
myModel.filter(('myField').match(myFieldInsensitive))
我写了
myModel.filter(r.row('myField').match(myFieldInsensitive))
<强> VOILA 强>!