Mongoose(二):クイックスタート
クイックスタートについては、公式文書の原文に詳しい説明があります.
以下は原文とやんちゃな訳文が含まれていますので、原文を点けなくてもいいです.
Getting StartdはMongooseを使用し始めました.
First be sure you have MongoDB and Node.js installed.まず、MongoDBとNodeJSがインストールされていることを確認します.
Next install Mongoose from the command line using npm:次にNPMコマンドでツールをインストールします.
With Mongoose,everthing is devid from a Schema.Let’s get a reference to it and define our kittens.Mongooseでは,すべてのものがモードから発生します.下のコードを参考にして、私たちのニャンコ人を定義します.
おめでとうございます.
That’s the end of our quick start.We created a schema、added a custom document method、saved and quered kittens in MongoDB Mongoose.Head over to the guide、or API docs for more.私たちの急速な開始が終わりました.振り返ってみますと、Mongooseでパターンを作成し、ユーザー定義の文書方法を追加して、MongoDBに保存して、猫星人の資料を調べました.もっとMongooseの情報を得たいなら、マニュアルやAPIの文書を読んでください.
以下は原文とやんちゃな訳文が含まれていますので、原文を点けなくてもいいです.
Getting StartdはMongooseを使用し始めました.
First be sure you have MongoDB and Node.js installed.まず、MongoDBとNodeJSがインストールされていることを確認します.
Next install Mongoose from the command line using npm:次にNPMコマンドでツールをインストールします.
$ npm install mongoose
Now say we like fuzy kittens and want to record ever kitten we ever meet in MongoDB.The first thing we need to do is include mogoode in our project and open a connect to to to the test database our.The locally locarlingning.monning ofに出会いたいです.私たちが最初にやるべきことは、Mongooseを私たちのプロジェクトに導入し、地元のtestというデータベースに接続することです.(注:MongoDBがインストールされた後、初期のデータベースであるtestがあります.もちろん、存在しない場合、MongoDBは自動的に一つを作成します.異常を投げ出すのではありません.)// getting-started.js
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
We have a pending connect to the test database running on locast.We now need to get notified if we connect success fully or if a connect error occurs:ローカルtestデータベースへの接続を開始します.今私たちは接続が成功したかどうかを知る必要があります.var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
// we're connected!
});
Once our connection opens,our calback will be caled.For brevity,let’s assiume that all following code is within calback.ここで定義されているコールバック関数が呼び出されます.簡潔のために、このコールバック関数に次のコードが全部書かれていると仮定します.(注:上のコードの// we're connected
の位置を意味します)With Mongoose,everthing is devid from a Schema.Let’s get a reference to it and define our kittens.Mongooseでは,すべてのものがモードから発生します.下のコードを参考にして、私たちのニャンコ人を定義します.
var kittySchema = mongoose.Schema({
name: String
});
So far so god.We've got a schema with one property,name,which will be a String.The next step is copiling our schema into a Model.これで十分です.私たちはパターンを作成しました.属性は一つだけです.名前は文字列です.次は私たちのモデルをMongooseモデルにコンパイルします.(完全な属性、方法を持たせ、データベースにアクセスできるようにする)var Kitten = mongoose.model('Kitten', kittySchema);
A model is a class with which we construct document s.In this case,each document will be a kitten will be a kitten with properties and behaviors as declead in.Let’s create a kitten document representing the little the atwadeltwest.この例では、各文書は、私たちが以前にモードで定義した属性と行動を持っているニャンコ星人である.現在は猫の星人文書を作成します.var silence = new Kitten({ name: 'Silence' });
console.log(silence.name); // 'Silence'
Kittens can meow、so let’s take a look at how to add「speak」functionlyto our documents:猫の人の一番の萌えポイントは「ニャー」という鳴き声にあります.だから、どのようにそれに発声の機能を加えるかを見てみましょう.// NOTE: methods must be added to the schema before compiling it with mongoose.model()
// : model
kittySchema.methods.speak = function () {
var greeting = this.name
? "Meow name is " + this.name
: "I don't have a name";
console.log(greeting);
}
var Kitten = mongoose.model('Kitten', kittySchema);
Funtions added to the methods property a schema get compled into the Model prototype and exposed on each document instance:これらはSchema(モード)のmethods属性に加えられた関数がモデルの原型方法にコンパイルされ、ドキュメントの例が暴露されます.(注:ここには専門用語がたくさんあります.一言で言えば、これらの猫は方法を呼び出して声を出すことができます.)var fluffy = new Kitten({ name: 'fluffy' });
fluffy.speak(); // "Meow name is fluffy"
We have talking kittens!But we still haven’t saved anything to MongoDB.Each document can be saved to the database by carlling its save method.The first argt to the calback will be an errolkyoccured.私たちはにゃと呼びますよ!しかし、まだMongoDBには何も保管していません.すべてのドキュメントはセーブ方法でデータベースに保存できます.方法の最初のパラメータは異常を処理するためのコールバック関数である.(注:必ずしも異常処理とは限らない.より正確には、保存操作が完了した後のコールバック――それはフィードバックerだけではなく、ドキュメントのインスタンスをフィードバックし、下記のコードに示すように、方法を呼び出すこともできるからである)fluffy.save(function (err, fluffy) {
if (err) return console.error(err);
fluffy.speak();
});
Say time goes by and we want to display all the kittens we’ve seen.We can access all of the kitten documents through our Kitten model.時間が経つのは早いです.今まで見たことのあるすべての猫星人を見せたいです.私たちは猫の模型を通して、すべての猫の文書にアクセスできます.(いたずらなBGMを開けてみました.時間が経つと夜が来ます.離れなければならないと思います.出かけようとする時、専門店を見ました.それは私のほしいスケート靴です.私のスケート靴はファッションが一番おしゃれです.)Kitten.find(function (err, kittens) {
if (err) return console.error(err);
console.log(kittens);
})
We just logged all of the kittens in our db to the consone.If we want to filter our kittens by name,Mongoose supports MongoDBs rich querying sysntax.私たちはコンソールでデータベースに記憶されているすべての猫星人を記録しました.もし私たちが猫の名前で一部の猫星人をフィルタリングしたいなら、MongooseはMongoDBの豊富な検索文をサポートします.Kitten.find({ name: /^Fluff/ }, callback);
This performs a search for all documents with a name property that begins with「Fluff」and returns the returns the relt as and array of kittens to the calback.ここでは、名前で「Fluff」で始まるすべての猫星人を探し出し、その結果をフィードバック関数で送ることを実証しました.(注:ここの/^Fluff
は正規表現であり、MongoDBの他の照会文書で代替することもできる)おめでとうございます.
That’s the end of our quick start.We created a schema、added a custom document method、saved and quered kittens in MongoDB Mongoose.Head over to the guide、or API docs for more.私たちの急速な開始が終わりました.振り返ってみますと、Mongooseでパターンを作成し、ユーザー定義の文書方法を追加して、MongoDBに保存して、猫星人の資料を調べました.もっとMongooseの情報を得たいなら、マニュアルやAPIの文書を読んでください.