const model = MyModel.scope(scopes);
const { queryGenerator } = model;
const queryOptions = {
scopes,
attributes,
include,
where,
order,
offset,
limit,
};
model._validateIncludedElements.bind(model)(queryOptions);
const cte = queryGenerator.selectQuery(
model.getTableName(),
queryOptions,
model
)
.slice(0, -1);
我对查询生成器有两个问题
通过阅读续集的源代码,我找到了解决方案,
Utils.mapFinderOptions
和model._injectScope
const model = MyModel.scope(scopes);
const { queryGenerator } = model;
const queryOptions = {
scopes,
attributes,
include,
where,
order,
offset,
limit,
};
model._injectScope(queryOptions);
model._validateIncludedElements.bind(model)(queryOptions);
Utils.mapFinderOptions(queryOptions, model);
const cte = queryGenerator.selectQuery(
model.getTableName(),
queryOptions,
model
)
.slice(0, -1);
使用此站点生成查询: https://querygenerator.oaktefy.com/