这就是我现在正在做的事情
const branchA = q =>
q.join(...joinParams);
const branchB = (q, params) =>
q.joinRaw('weird join')
.join(...params)
.groupBy('name');
const q = knex('user').where(condition);
if (bool) {
return branchA(q);
}
else {
return branchB(q, params);
}
我希望我的代码看起来更实用。我正在寻找类似的东西:
knex('user').where(condition).inject(q => bool ? queryBranchA(q) : branchB(q, params));
该“注入”是我在knex文档中找不到的。
答案 0 :(得分:0)
我想您正在寻找https://knexjs.org/上的.modify()
,但似乎在侧边栏中找不到它。
已将有关此问题的文档添加到https://github.com/knex/documentation/issues/146