Mongoose est utilisé pour définir un schéma. droite? Est-il possible de créer un schéma avec mongoDB via mongo Shell? commeMongoose ou MongoDB pour la définition de schéma?
par exemple: name: String
Mongoose est utilisé pour définir un schéma. droite? Est-il possible de créer un schéma avec mongoDB via mongo Shell? commeMongoose ou MongoDB pour la définition de schéma?
par exemple: name: String
MongoDB ne supporte pas le schéma. C'est un document schématique basé sur DB.
Mongoose est un ODM (Object Document Mapper) qui permet d'interagir avec MongoDB via un schéma, ainsi que des validations &.
Mongoose aide à interagir avec MongoDB en termes d'objet/modèle afin que le programmeur n'ait pas besoin de comprendre le rappel des instructions de MongoDB.
En outre, Mongoose fournit de nombreuses méthodes d'opérations CRUD pour une meilleure compréhension des opérations DB.
Vous pouvez consulter des exemples ici
https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/mongoose http://mongoosejs.com/docs/
Fondamentalement MongoDB est schéma base de données moins nous ne pouvons pas en mesure de créer le schéma directement dans MongoDB. En utilisant mongoose, nous pouvons créer un schéma. Fonctionnement simple CRUD utilisant mangouste, pour plus d'informations ref cette link
package.json
{
"name": "product-api",
"main": "server.js",
"dependencies": {
"express": "~4.0.0",
"body-parser": "~1.0.1",
"cors": "2.8.1",
"mongoose": "~3.6.13"
}
}
product.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ProductSchema = new Schema({
title: String,
price: Number,
instock : Boolean,
photo : String ,
});
module.exports = mongoose.model('Product', ProductSchema);
// module.exports = mongoose.model('Product', ProductSchema,'optiponally pass schema name ');
server.js
var express = require('express');
var bodyParser = require('body-parser');
var cors = require('cors');
var app = express();
var mongoose = require('mongoose');
var product = require('./product');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
var port = process.env.PORT || 8090;
var router = express.Router();
mongoose.connect('mongodb://localhost:27017/products');
// Middle Route
router.use(function (req, res, next) {
// do logging
// do authentication
console.log('Logging of request will be done here');
next(); // make sure we go to the next routes and don't stop here
});
router.route('/products').post(function (req, res) {
console.log("in add");
var p = new product();
p.title = req.body.title;
p.price = req.body.price;
p.instock = req.body.instock;
p.photo = req.body.photo;
p.save(function (err) {
if (err) {
res.send(err);
}
console.log("added");
res.send({ message: 'Product Created !' })
})
});
router.route('/products').get(function (req, res) {
product.find(function (err, products) {
if (err) {
res.send(err);
}
res.send(products);
});
});
router.route('/products/:product_id').get(function (req, res) {
product.findById(req.params.product_id, function (err, prod) {
if (err)
res.send(err);
res.json(prod);
});
});
router.route('/products/:product_id').put(function (req, res) {
product.findById(req.params.product_id, function (err, prod) {
if (err) {
res.send(err);
}
prod.title = req.body.title;
prod.price = req.body.price;
prod.instock = req.body.instock;
prod.photo = req.body.photo;
prod.save(function (err) {
if (err)
res.send(err);
res.json({ message: 'Product updated!' });
});
});
});
router.route('/products/:product_id').delete(function (req, res) {
product.remove({ _id: req.param.product_id }, function (err, prod) {
if (err) {
res.send(err);
}
res.json({ message: 'Successfully deleted' });
})
});
app.use(cors());
app.use('/api', router);
app.listen(port);
console.log('REST API is runnning at ' + port);
qui était clair. thnks buddy –
Hey karthikeyan, j'ai obtenu ne peut pas obtenir/this dans mon écran o/p –
merci budyy !!!! –
pouvez-vous partager le lien ref de l'opération CRUD en utilisant MEAN et Mongoose .. –
@ChrisFelix Suivez https://coursework.vschool.io/mongoose-crud/ pour l'opération CRUD en utilisant Mongoose –