소스 검색

feat #1945: Added limit and offset to getFilterAsync and implemented setFlat

tags/v0.12.0
Shaun 1 년 전
부모
커밋
4b05be768a
1개의 변경된 파일37개의 추가작업 그리고 1개의 파일을 삭제
  1. +37
    -1
      src/server/db/ioRethink.js

+ 37
- 1
src/server/db/ioRethink.js 파일 보기

@@ -77,7 +77,29 @@ module.exports = {
return res;
},

getFilterAsync: async function ({ table, noDefault, filter }) {
getFilterAsync: async function ({ table, noDefault, filter, limit, offset }) {
let res = r
.table(table)
.filter(filter);

if (offset)
res = res.skip(offset);

if (limit)
res = res.limit(limit);

await res.run();

if (res)
return res;

if (!noDefault)
return [];

return null;
},

getFilterFlat: async function ({ table, noDefault, filter }) {
const res = await r
.table(table)
.filter(filter)
@@ -129,6 +151,20 @@ module.exports = {
}
},

setFlat: async function ({
table,
value,
conflict = 'update'
}) {
try {
await r.table(table)
.insert(value, { conflict })
.run();
} catch (e) {
this.logError(e, table, JSON.stringify(value));
}
},

deleteAsync: async function ({
key,
table


불러오는 중...
취소
저장