diff options
Diffstat (limited to 'src/models')
| -rw-r--r-- | src/models/hashtag.ts | 34 | ||||
| -rw-r--r-- | src/models/user.ts | 1 |
2 files changed, 33 insertions, 2 deletions
diff --git a/src/models/hashtag.ts b/src/models/hashtag.ts index f5b6156055..742e4a254c 100644 --- a/src/models/hashtag.ts +++ b/src/models/hashtag.ts @@ -3,11 +3,41 @@ import db from '../db/mongodb'; const Hashtag = db.get<IHashtags>('hashtags'); Hashtag.createIndex('tag', { unique: true }); -Hashtag.createIndex('mentionedUserIdsCount'); +Hashtag.createIndex('mentionedUsersCount'); +Hashtag.createIndex('mentionedLocalUsersCount'); +Hashtag.createIndex('attachedUsersCount'); +Hashtag.createIndex('attachedLocalUsersCount'); export default Hashtag; +// 後方互換性のため +Hashtag.findOne({ attachedUserIds: { $exists: false }}).then(h => { + if (h != null) { + Hashtag.update({}, { + $rename: { + mentionedUserIdsCount: 'mentionedUsersCount' + }, + $set: { + mentionedLocalUserIds: [], + mentionedLocalUsersCount: 0, + attachedUserIds: [], + attachedUsersCount: 0, + attachedLocalUserIds: [], + attachedLocalUsersCount: 0, + } + }, { + multi: true + }); + } +}); + export interface IHashtags { tag: string; mentionedUserIds: mongo.ObjectID[]; - mentionedUserIdsCount: number; + mentionedUsersCount: number; + mentionedLocalUserIds: mongo.ObjectID[]; + mentionedLocalUsersCount: number; + attachedUserIds: mongo.ObjectID[]; + attachedUsersCount: number; + attachedLocalUserIds: mongo.ObjectID[]; + attachedLocalUsersCount: number; } diff --git a/src/models/user.ts b/src/models/user.ts index 6cc44f371d..2549b2568a 100644 --- a/src/models/user.ts +++ b/src/models/user.ts @@ -18,6 +18,7 @@ const User = db.get<IUser>('users'); User.createIndex('createdAt'); User.createIndex('updatedAt'); User.createIndex('followersCount'); +User.createIndex('tags'); User.createIndex('username'); User.createIndex('usernameLower'); User.createIndex('host'); |