try new query
This commit is contained in:
parent
2d14777573
commit
5b9e2ec817
@ -1,6 +1,6 @@
|
|||||||
import { Brackets } from 'typeorm';
|
import { Brackets } from 'typeorm';
|
||||||
import { fetchMeta } from '@/misc/fetch-meta.js';
|
import { fetchMeta } from '@/misc/fetch-meta.js';
|
||||||
import { Notes, Users } from '@/models/index.js';
|
import { Notes, Metas } from '@/models/index.js';
|
||||||
import { activeUsersChart } from '@/services/chart/index.js';
|
import { activeUsersChart } from '@/services/chart/index.js';
|
||||||
import define from '../../define.js';
|
import define from '../../define.js';
|
||||||
import { ApiError } from '../../error.js';
|
import { ApiError } from '../../error.js';
|
||||||
@ -66,12 +66,17 @@ export default define(meta, paramDef, async (ps, user) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// .andWhere('(note.userHost IN (:instances)) OR (note.userHost IS NULL)', { instances: instances })
|
// .andWhere('(note.userHost IN (:instances)) OR (note.userHost IS NULL)', { instances: instances })
|
||||||
|
|
||||||
//#region Construct query
|
//#region Construct query
|
||||||
|
const instancesQuery = Metas.createQueryBuilder('meta')
|
||||||
|
.select('meta.recommendedInstances');
|
||||||
|
// .where('meta.recommendedInstances = ANY(:instance)', { instance: m.recommendedInstances });
|
||||||
|
|
||||||
const query = makePaginationQuery(Notes.createQueryBuilder('note'),
|
const query = makePaginationQuery(Notes.createQueryBuilder('note'),
|
||||||
ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate)
|
ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate)
|
||||||
.andWhere(new Brackets(qb => {
|
.andWhere(new Brackets(qb => {
|
||||||
qb.where('note.userHost IN (:instances)', { instances: m.recommendedInstances })
|
qb.where(`note.userHost IN ${ instancesQuery.getQuery() }`);
|
||||||
.orWhere('note.userHost IS NULL');
|
// .orWhere('note.userHost IS NULL');
|
||||||
}))
|
}))
|
||||||
.andWhere('(note.visibility = \'public\')')
|
.andWhere('(note.visibility = \'public\')')
|
||||||
.innerJoinAndSelect('note.user', 'user')
|
.innerJoinAndSelect('note.user', 'user')
|
||||||
|
Loading…
Reference in New Issue
Block a user