MEAN.JS - Bangun Model Data

Dalam bab ini, kami akan mendemonstrasikan cara menggunakan model data di aplikasi Node-express kami.

MongoDB adalah database NoSQL open source yang menyimpan data dalam format JSON. Ini menggunakan model data berorientasi dokumen untuk menyimpan data daripada menggunakan tabel dan baris seperti yang kita gunakan dalam database relasional. Dalam bab ini, kami menggunakan Mongodb untuk membangun model data.

Model data menentukan data apa yang ada dalam dokumen, dan data apa yang harus ada di dokumen. Lihat instalasi resmi MongoDB , untuk menginstal MongoDB.

Kami akan menggunakan kode bab sebelumnya. Anda dapat mengunduh kode sumber di tautan ini . Unduh file zip; ekstrak di sistem Anda. Buka terminal dan jalankan perintah di bawah ini untuk menginstal dependensi modul npm.

$ cd mean-demo
$ npm install

Menambahkan Mongoose ke Aplikasi

Mongoose adalah pustaka pemodelan data yang menentukan lingkungan dan struktur untuk data dengan membuat MongoDB menjadi kuat. Anda dapat menginstal Mongoose sebagai modul npm melalui baris perintah. Buka folder root Anda dan jalankan perintah di bawah ini -

$ npm install --save mongoose

Perintah di atas akan mengunduh paket baru dan menginstalnya ke folder node_modules . The --save bendera akan menambah paket ini untuk package.json berkas.

{
   "name": "mean_tutorial",
   "version": "1.0.0",
   "description": "this is basic tutorial example for MEAN stack",
   "main": "server.js",
   "scripts": {
      "test": "test"
   },
   "keywords": [
      "MEAN",
      "Mongo",
      "Express",
      "Angular",
      "Nodejs"
   ],
   "author": "Manisha",
   "license": "ISC",
   "dependencies": {
      "express": "^4.17.1",
      "mongoose": "^5.5.13"
   }
}

Menyiapkan File Koneksi

Untuk bekerja dengan model data, kita akan menggunakan folder app / models . Mari buat model students.js seperti di bawah ini -

var mongoose = require('mongoose');

// define our students model
// module.exports allows us to pass this to other files when it is called
module.exports = mongoose.model('Student', {
   name : {type : String, default: ''}
});

Anda dapat mengatur file koneksi dengan membuat file dan menggunakannya dalam aplikasi. Buat file bernama db.js di config / db.js . Isi file seperti di bawah ini -

module.exports = {
   url : 'mongodb://localhost:27017/test'
}

Di sini tes adalah nama database.

Di sini diasumsikan bahwa Anda telah menginstal MongoDB secara lokal. Setelah terinstal, mulailah Mongo dan buat database dengan tes nama. Db ini akan memiliki koleksi berdasarkan nama siswa. Masukkan beberapa data ke koleksi ini. Dalam kasus kami, kami telah menyisipkan record menggunakan db.students.insertOne ({name: 'Manisha', place: 'Pune', country: 'India'});

Bawa file db.js ke dalam aplikasi, yaitu di server.js . Isi file seperti yang ditunjukkan di bawah ini -

// modules =================================================
const express = require('express');
const app = express();
var mongoose = require('mongoose');
// set our port
const port = 3000;
// configuration ===========================================

// config files
var db = require('./config/db');
console.log("connecting--",db);
mongoose.connect(db.url); //Mongoose connection created

// frontend routes =========================================================
app.get('/', (req, res) ⇒ res.send('Welcome to Tutorialspoint!'));

//defining route
app.get('/tproute', function (req, res) {
   res.send('This is routing for the application developed using Node and Express...');
});

// sample api route
// grab the student model we just created
var Student = require('./app/models/student');
app.get('/api/students', function(req, res) {
   // use mongoose to get all students in the database
   Student.find(function(err, students) {
      // if there is an error retrieving, send the error.
      // nothing after res.send(err) will execute
      if (err)
         res.send(err);
      res.json(students); // return all students in JSON format
   });
});
// startup our app at http://localhost:3000
app.listen(port, () ⇒ console.log(`Example app listening on port ${port}!`));

Selanjutnya, jalankan aplikasi dengan perintah di bawah ini -

$ npm start

Anda akan mendapatkan konfirmasi seperti yang ditunjukkan pada gambar di bawah ini -

Sekarang, masuk ke browser dan ketik http://localhost:3000/api/students. Anda akan mendapatkan halaman seperti yang ditunjukkan pada gambar di bawah ini -