diff --git a/shared/db/Activity.ts b/shared/db/Activity.ts index 073f7ef88..6f2311def 100644 --- a/shared/db/Activity.ts +++ b/shared/db/Activity.ts @@ -1,5 +1,5 @@ import BaseModel from './BaseModel'; -import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose'; +import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose'; import { CounterModel } from './Counter'; import { COUNTER } from '../consts'; import { ActivityGroupModel } from './ActivityGroup'; @@ -183,7 +183,13 @@ export default class Activity extends BaseModel { } } -export const ActivityModel = getModelForClass(Activity); + +export let ActivityModel: ReturnModelType; +export function loadActivity(connect: mongoose.Connection) { + ActivityModel = getModelForClass(Activity, { + existingConnection: connect + }); +} export interface ActivityModelType extends Pick, keyof Activity> { } export type ActivityModelTypeParam = Partial; // 将所有字段变成可选项 \ No newline at end of file diff --git a/shared/db/ActivityGroup.ts b/shared/db/ActivityGroup.ts index 52dcc6d20..3e294aa6a 100644 --- a/shared/db/ActivityGroup.ts +++ b/shared/db/ActivityGroup.ts @@ -1,5 +1,5 @@ import BaseModel from './BaseModel'; -import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose'; +import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose'; import { CounterModel } from './Counter'; import { COUNTER } from '../consts'; import { ActivityModel } from './Activity'; @@ -169,7 +169,12 @@ export default class Activity_Group extends BaseModel { } } -export const ActivityGroupModel = getModelForClass(Activity_Group); +export let ActivityGroupModel: ReturnModelType; +export function loadActivityGroup(connect: mongoose.Connection) { + ActivityGroupModel = getModelForClass(Activity_Group, { + existingConnection: connect + }); +} export interface ActivityGroupModelType extends Pick, keyof Activity_Group> { } export type ActivityGroupModelTypeParam = Partial; // 将所有字段变成可选项 \ No newline at end of file diff --git a/shared/db/ActivityGroupType.ts b/shared/db/ActivityGroupType.ts index f85797b9c..029ccbcfc 100644 --- a/shared/db/ActivityGroupType.ts +++ b/shared/db/ActivityGroupType.ts @@ -1,5 +1,5 @@ import BaseModel from './BaseModel'; -import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose'; +import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose'; import { CounterModel } from './Counter'; import { COUNTER, ACTIVITY_TYPE } from '../consts'; @@ -111,7 +111,12 @@ export default class Activity_GroupType extends BaseModel { } } -export const ActivityGroupTypeModel = getModelForClass(Activity_GroupType); +export let ActivityGroupTypeModel: ReturnModelType; +export function loadActivityGroupType(connect: mongoose.Connection) { + ActivityGroupTypeModel = getModelForClass(Activity_GroupType, { + existingConnection: connect + }); +} export interface ActivityGroupTypeInter extends Pick, keyof Activity_GroupType> { id: number; diff --git a/shared/db/index.ts b/shared/db/index.ts index a7a79789f..e1ca20031 100644 --- a/shared/db/index.ts +++ b/shared/db/index.ts @@ -7,9 +7,15 @@ import { loadServerlistModel } from "./Serverlist"; import { loadGMMailModel } from './GMMail'; import { loadCounterModal } from "./CounterAll"; import { loadMarqueeModel } from "./Marquee"; +import { loadActivity } from "./Activity"; +import { loadActivityGroup } from "./ActivityGroup"; +import { loadActivityGroupType } from "./ActivityGroupType"; export function loadGmDb(connect: mongoose.Connection) { // console.log('************') + loadActivity(connect); + loadActivityGroup(connect); + loadActivityGroupType(connect); loadGMGroupModel(connect); loadGMUserModel(connect); loadGMRecordModel(connect);