MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak zdefiniować niestandardowego pomocnika zapytań w modelu mangusty za pomocą maszynopisu?

Opracowałem nową wersję @types/mongoose który obsługuje pomocników zapytań. Zobacz tę odpowiedź aby dowiedzieć się, jak zainstalować zmodyfikowany @types pakiet. W mojej wersji powinieneś być w stanie napisać następujące elementy w 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);

a następnie routes/article.ts będzie działać. Jeśli to działa, wyślę żądanie ściągnięcia do oryginalnego pakietu na DefinitelyTyped.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sterownik PHP72 MongoDB z Homebrew na OSX

  2. Jaka jest alternatywa dla wtyczki Elastic River-Mongodb obsługiwanej przez elasticsearch 2.2.0?

  3. Zapytanie Node mongoose find w pętli nie działa

  4. mpromise (domyślna biblioteka obietnicy Mongoose) jest przestarzałym błędem podczas testowania

  5. Odinstaluj MongoDB w systemie Mac OS X