よろしくお願いします。
これまではMongoのコンソールを使ってMongoのテレビとやりとりする方法を見てきましたが、私が指摘したように、物事を教えたり、物をテストしたりデバッグするのにはうってつけですが、実際には、私たちが実際にやっているところのデータベースは、表現されたコードの代わりです。
だから、彼らはYelpキャンプに行き、彼女のアプリを見てみましょう。
はい。
manguを使用する場所の例を次に示します。
たとえば、配列にキャンプ場を追加するのではなく、配列に新しいキャンプ場を追加する場合は、データベースにmongoデータベースとcampgroundというコレクションがあります。
これは実際にこのシリーズですぐに登場しています。
そして、私たちがMongar
DPコレクションに挿入しようとしている配列にプッシュするのではなく、キャンプ場をスラッシュにするという投稿要求を提出すると、ここで定義されている配列キャンプ場でキャンプ場をレンダリングするのではなく、
私たちは実際にD-Bのキャンプ場の発見を見つけ、その結果をキャンプグラウンドのテンプレートに送ります。
OK。
だから我々はそこに着くだろう。
これが私たちがこのレッスンに焦点を当てています。
これを行うために、私たちはmongooseというツールについて学びます。
だから私は3つの主な目標を持っています。
また、javascriptファイルの代わりに使用する方法も示したいと思います。
モンゴースが何であるか話し合いましょう。
だから私は公式ホームページを開いている。
Mongooseは、天才のためのモデリングのない優雅なMongo DBオブジェクトです。
OK。
ちょっと読んでみましょう。
Mongooseは、アプリケーションデータをモデル化するための簡単なスキーマベースのソリューションを提供します。
これは、組み込みのtypecasting検証queery建物のビジネスロジック同軸とボックスのより多くのものが含まれています。
だから、これは熟練した開発者にはもっと意味があると思います。
しかし、それが本当に意味することは、モンゴースが道具であるということです。
私たちがjavascriptファイルの代わりにMongo D-Bと対話するのに役立つ、NPMでダウンロードするパッケージです。
それはマングースなしで行うことが可能です。
このようなツールが他にもありましたが、Jay
QuerreyがDomとのやりとりを容易にするのと同じように、データベースとのやりとりが容易になりましたが、クエリは必要ありません。
Mongooseはmonkhood DBデータベースとやりとりするのが簡単できれいですが、必要はありません。
ですから、クラウド9に戻って、私は先に進んで1つのjavascriptファイルを作成しましょう。
それは明示的なアプリケーションになることはありません、それは私がノード・ノードで実行した単一のファイルであり、私がファイルを実行したときに私たちがmongooseを使用してデータベースに何かを追加したい場合です。
だから私は始めましょう。
私はデータベースと呼ばれるディレクトリの中にあり、私はファイルを作るつもりです。
それを猫と呼んでみましょう。
はい、私はあまりにも多くの犬のものをやってきました。
私は苦情を受けるつもりであることを知っています。
いくつかの猫をうまくやって、真剣に、そしてその中をキャッチすること。
それを開いて、何かをする前にパッケージであるmongooseをインストールします。
そこに私たちは行くとここでいくつかの部屋を作ってみましょうそして私たちがやりたい次のことは、マングースを必要とする誰が私たちのマングースを必要とするマングースを必要とする我々はまず最初に行うだろうデータベースに新しい猫を追加することに焦点を当てる後で我々はデータベースから全てのネコを検索するつもりで、それと同じようにそれぞれを記録する簡単なコンソールを実行します。
それでは、新しい猫をデータベースに追加する方法を理解することから始めます。
そして、それを行う前に、私たちがデータベースに接続する必要のあるMongooseを少しだけセットアップする必要があります。
だから私たちがバックグラウンドでこれをどのように稼働させているかを覚えておいてください
これが私たちのMongo demanです。
私たちはそれを維持しておく必要があります。
あなたが何らかの理由でそれをオフにした場合、コマンドMan-Godでそれをオンに戻してから、私たちが実行しているこのサーバーに接続するようmongooseに指示します。このようなMongo
DBコロンスラッシュのlocalhostスラッシュのように見える必要があります。
そして、次に来たいものは何でも。
これは私たちのデータベースの名前です。
以前と同じように、データベースを作成していない場合はcat appと呼ぶことにします。まだcat appデータベースはありません。
これを実行すると、接続して試してみると猫のアプリが見つかることはなく、猫のアプリが私のために作られます。
しかし1つがあり、それがそれを見つけるなら、それは既存の猫のアプリを使用するでしょう。
だから私はちょうど猫のアプリと一緒に行くでしょう。
それは私にとっては大丈夫です。
これでデータベースに接続し、ファイルノードcat catを実行するだけでテストできます。
はい。
私たちはすべてがうまくいくという意味のエラーはありません。
だから私たちはそのことからCを制御することができます。
そして今私たちがしたいのは、データベースに猫を追加することです。
それをする前に、実際に猫がどのように見えるかを定義する必要があります。
だから私はここでそれをやるつもりだし、あなたは新しい構文をかなり見るつもりです。
あなたが今までに見たことのないモンゴースの新しいメソッドの束は、私はそれらをすべて説明することを約束しますが、私はそれを入力するだけで始めるつもりです。
そこで、私たちは、猫のスキーマを、新しいマングースのドットスキーマと定義します。これは、オブジェクトをオブジェクトに渡してからオブジェクトの内部に渡すことで、猫が名前であるという文字列を持ちます。私は実際に多くの猫の品種を知らないので、私は気づいていますが、私はこれを変えて、これは本当に難しい言葉です。
私はいつもこれについて忘れています。
私は彼が正しいと思う。
だから気質もよく、それも文字列になります。
OK。
そして私たちは救います。
そして、これは実際に私たちのデータベースに何もしません。
それはただマングースやジャバスクリプトに伝えます。
それは、私がデータベースに猫を追加できるようにしたいと思うことのjavascript側に伝えます。
いいえ。
Q Wellは非リレーショナルです。
テーブルを定義する必要はありません。
はい、そうです。
これはテーブルを定義していません。
これはデータのパターンを定義していますが、新しいものを追加したり特定のものを残したりすることを禁じられているわけではありません。
それは、これらのネコを扱うことができるコードを記述するために、ある種の予測可能な構造が必要なので、構造を提供するうまい方法です。
名前の年齢と気質をプリントアウトするテンプレートが必要だとしましょう。
すべての猫に年齢と気質という名前が付いていることを確認する必要があります。
それがなければ、それを予測できる必要があります。
スキルを定義する方法です
しかし、私たちはもう1つのことを解決します。
そして私の経験では、この次の行はちょっと混乱します。
Doppモデルに等しくなり、次にcatが今度は引用符で囲まれ、次にスキーマになります。
だから私がそれをタイプすると、最初に首都Cがmongoose
そして私たちは救うつもりです。
だから私たちがここで行ったことは、すべてのネコに年齢と気質の名前があり、それをモデルにまとめて変数catに保存し、そのcat変数を使うことができるパターンである、新しい猫に猫を見つけて猫を飼って猫を飼ってもらうためには、首都Cを使ってください。
私たちは猫のすべてをやるつもりだから、猫の発見や猫の斑点の削除、猫の斑点の作成などのことがあります。
だから私たちはこの猫オブジェクトを作成しました。この猫オブジェクトは実際には猫のパターンです。今ではそれにもさまざまな部分があります。
だから、これはちょうど猫が名前の年齢と気質を持っているという単なるパターンです。
それをモデルにコンパイルした後に変数に保存すると、このパターンだけでなく、実際にはすべてのメソッドが必要になります。
それで、そのパターンをとり、私たちが使う必要があるすべての方法を持つこの複雑なモデルを構築します。
そして、これは特にここではちょっと混乱しています。これは、常にコレクション名の単なるバージョンであると考えられています。
ですから、私たちがここで行ったことである猫を与えるなら、それは猫と呼ばれるコレクションを作るつもりです。そして、それが複数形のものである限り、それはかなりスマートです。
それをする素晴らしいライブラリがあります。
人のように何かを何の問題もなく複数形にすることができます。
もう一度これは私たちのモデルの私たちのモデルであるcatという名前ですが、それは自動的にそれをとり、私たちのデータベースにD-Bダムネコのような新しいコレクションを作ります。
さて、今、私たちは猫を追加するために必要なすべてを持っています。
これでコードを書くだけです。