Maison  >  Article  >  interface Web  >  Comment créer un identifiant en utilisant mangouste en Javascript ?

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

WBOY
WBOYavant
2023-08-24 09:25:021461parcourir

如何在 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();

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);
});

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
}

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);
});

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
}

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);
});

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
}

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer