MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да дефинирам персонализиран помощник за заявки в mongoose модел с машинопис?

Начертах нова версия на @types/mongoose който поддържа помощни средства за заявки. Вижте този отговор за начини за инсталиране на модифициран @types пакет. С моята версия трябва да можете да напишете следното в models/article.ts :

import { Document, Schema, Model, model, DocumentQuery } from 'mongoose';

interface IArticle extends Document {
   name: string;
}

interface IArticleModel extends Model<IArticle, typeof articleQueryHelpers> {
   someStaticMethod(): Promise<any>;
}

const ArticleSchema = new Schema( { name: String } )

let articleQueryHelpers = {
    byName(this: DocumentQuery<any, IArticle>, name: string) {
        return this.find({ name });
    }
};
ArticleSchema.query = articleQueryHelpers;

export default model<IArticle, IArticleModel>('Article', ArticleSchema);

и след това routes/article.ts ще работи. Ако това работи за вас, тогава ще изпратя заявка за изтегляне към оригиналния пакет на DefinitelyTyped.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Актуализирайте елемента на вложен масив в mongodb

  2. как да импортирате csv файл в mongodb в Java

  3. Възможно ли е да въвеждате прехвърлени данни в тръбопровод за агрегиране на MongoDB?

  4. Какво е проблемът за писане на mongod по подразбиране в коя версия?

  5. Заявка и вмъкване с една команда