Maison > interface Web > js tutoriel > le corps du texte

Comment créer un identifiant en utilisant mangouste en Javascript ?

WBOY
Libérer: 2023-08-24 09:25:02
avant
1504 Les gens l'ont consulté

如何在 Javascript 中使用 mongoose 创建 id?

Dans ce tutoriel, nous apprendrons à créer un identifiant en utilisant mangouste en JavaScript. Les utilisateurs peuvent utiliser le package Mongoose NPM dans NodeJS pour utiliser MongoDB avec NodeJS ou connecter MongoDB avec des applications.

Lors du stockage des données dans la base de données MongoDB, nous devons ajouter un identifiant unique à chaque collection de données. Cependant, si nous n'ajoutons pas l'identifiant, il est automatiquement généré et ajouté aux données.

Grammaire

Les utilisateurs peuvent créer des identifiants en utilisant mangouste en JavaScript selon la syntaxe suivante.

var newId = new mongoose.mongo.ObjectId();
Copier après la connexion

Dans la syntaxe ci-dessus, nous accédons à "mongo" depuis mangouste et appelons la méthode "ObjectId()" pour générer un nouvel identifiant.

Exemple 1

Dans l'exemple ci-dessous, nous connectons MongoDB avec NodeJS. Cependant, les utilisateurs doivent modifier les détails de leur compte. Après cela, nous avons créé le motif Mongoose. En utilisant cette architecture, nous avons créé le modèle Mongoose.

L'objet de données contient les données à enregistrer dans la base de données MongoDB. Après cela, nous enregistrons la collecte de données dans MongoDB à l'aide de la méthode save(). Si les données sont stockées avec succès, les résultats sont imprimés. Dans la sortie, l'utilisateur peut observer l'identifiant des données.

Nous n'attribuons aucun identifiant aux données, elles sont donc automatiquement générées.

const mongoose = require("mongoose");
// Database connection
mongoose
.connect(
   "mongodb+srv://shubhamvora05:Stockdata@stockdata.lrlgm.mongodb.net/StockList?retryWrites=true&w=majority",
   { useNewUrlParser: true, useUnifiedTopology: true }
)
.then(() => {
   console.log("Connected to database");
})
.catch((err) => {
   console.log("Error connecting to DB", err.message);
});

const dataSchema = new mongoose.Schema({
   name: String,
   type: String,
});

const dataModel = mongoose.model("dataModel", dataSchema);

const data = {
   name: "Delhi",
   type: "city",
};

var dataDetails = new dataModel(data);
dataDetails
.save()
.then((res) => {
   console.log(res);
})
.catch((err) => {
   console.log(err);
});
Copier après la connexion

Sortie

Une fois exécuté, il produira le résultat suivant -

$ node index.js
Connected to database
{
   name: 'Delhi',
   type: 'city',
   _id: new ObjectId("642b937407844923e4fddee7"),
   __v: 0
}
Copier après la connexion

Exemple 2

Dans l'exemple ci-dessous, nous utilisons la méthode "mongo.ObjectId()" pour générer un identifiant pour les données. Ensuite, nous imprimons l'identifiant généré dans la console. Ensuite, nous sauvegardons les données en attribuant l'identifiant nouvellement généré.

Dans le résultat, l'utilisateur peut observer que l'identifiant des données est le même que l'identifiant que nous avons généré.

const mongoose = require("mongoose");
// Database connection
mongoose
.connect(
   "mongodb+srv://shubhamvora05:Stockdata@stockdata.lrlgm.mongodb.net/StockList?retryWrites=true&w=majority",
   { useNewUrlParser: true,    useUnifiedTopology: true }
)
.then(() => {
   console.log("Connected to database");
})
.catch((err) => {
   console.log("Error connecting to DB", err.message);
});

const dataSchema = new mongoose.Schema({
   name: String,
   type: String,
});

const dataModel = mongoose.model("dataModel", dataSchema);
var newId = new mongoose.mongo.ObjectId();
console.log(newId);

const data = {
   _id: newId,
   name: "Gujarat",
   type: "state",
};

var dataDetails = new dataModel(data);
dataDetails
.save()
.then((res) => {
   console.log(res);
})
.catch((err) => {
   console.log(err);
});
Copier après la connexion

Sortie

Une fois exécuté, il produira le résultat suivant -

$ node index.js
new ObjectId("642b9796987428b8b945f477") Connected to database
{
   name: 'Gujarat',
   type: 'state',
   _id: new ObjectId("642b9796987428b8b945f477"),
   __v: 0
}
Copier après la connexion

Exemple 3

Dans l'exemple ci-dessous, nous transmettons une chaîne de 12 octets en tant que paramètre à la méthode ObjectId(). Il génère un nouvel identifiant basé sur la valeur passée en argument. Cependant, l'utilisateur peut également passer 24 caractères hexadécimaux en paramètres.

Dans la sortie, l'utilisateur peut observer les 24 caractères hexadécimaux pour l'identifiant.

const mongoose = require("mongoose");
// Database connection
mongoose
.connect(
   "mongodb+srv://shubhamvora05:Stockdata@stockdata.lrlgm.mongodb.net/StockList?retryWrites=true&w=majority",
   { useNewUrlParser: true, useUnifiedTopology: true }
)
.then(() => {
   console.log("Connected to database");
})
.catch((err) => {
   console.log("Error connecting to DB", err.message);
});
const dataSchema = new mongoose.Schema({
   name: String,
   type: String,
});
const dataModel = mongoose.model("dataModel", dataSchema);
var newId = new mongoose.mongo.ObjectId('234556567123');
const data = {
   _id: newId,
   name: "Lokesh",
   type: "name",
};
var dataDetails = new dataModel(data);
dataDetails
.save()
.then((res) => {
   console.log(res);
})
.catch((err) => {
   console.log(err);
});
Copier après la connexion

Sortie

Une fois exécuté, il produira le résultat suivant -

$ node index.js
Connected to database
{
   name: 'Lokesh',
   type: 'name',
   _id: new ObjectId("323334353536353637313233"),
   __v: 0
}
Copier après la connexion

Conclusion

L'utilisateur a appris à générer des identifiants aléatoires dans MongoDb. De plus, les utilisateurs ont appris à générer des identifiants spécifiques pour les données MongoDB en transmettant une chaîne de 12 octets ou 24 caractères hexadécimaux en tant que paramètre à la méthode ObjectId().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal