Comment puis-je supprimer des données particulières dans mongodb en utilisant node.js?
router.post('/deletedata', (req, res) => {
console.log("deleted values are",req.body.id)
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mohan");
var myquery = req.body.id;
console.log("myquery value is:", myquery)
dbo.collection("customers").remove({myquery}, function(err, obj) {
if (err) throw err;
db.close();
});
});
res.json({
statusCode: 200,
result: "success",
})
}
);
export default router;
J'ai obtenu un identifiant particulier de l'application React hooks crud, donc je peux voir l'identifiant dans le nœud js mais ce n'est pas le cas supprimer les données d'identification spécifiques dans mongoDB
3 Réponses :
Votre requête supprimera uniquement les documents avec myquery: passId
Je parie que la requête devrait ressembler à {_id: myquery}
dbo.collection("customers").remove({_id: myquery}, function(err, obj) {
if (err) throw err;
db.close();
});
Si j'utilise ce code, il fonctionne mais supprime le haut de la valeur de la collection. Mais je dois supprimer ce sur quoi j'ai cliqué sur id (bouton de suppression dans l'application crud dans les crochets).
dbo.collection("customers").remove(myquery, function(err, obj) {
if (err) throw err;
db.close();
});
Dans mes hooks en utilisant axios comme celui-ci..const deleteUser = id => {console.log ("id value is", id) setEditing (false) setUsers (users.filter (user => user.id! == id)) // let data = id axios.post (' localhost: 8001 / api / social / deletedata' , id ) .then ((res) => {console.log ('response', res);}) .catch ((error) => {console.log ('bloc d'erreur appelé', erreur) ;})}
Donnez un exemple qui s'exécute en utilisant des hooks de réaction avec nodeJS et mongoDB. Cela devrait être une application grossière. Je manque d'opération de suppression et de mise à jour avec le back-end
Si vous obtenez un identifiant côté nœud que vous devez supprimer de MongoDB, la requête ci-dessus doit fonctionner .. et si vous n'obtenez pas l'identifiant côté nœud, vous devez accéder en tant que req.params.id et non req.body .identifiant.
Oui, j'ai eu un identifiant de suppression de react hooks crud mais dans les données mongodb ne peuvent pas supprimer wat to do..Donner n'importe quelle solution et la requête ci-dessus n'a pas fonctionné
Pour que la requête ci-dessus fonctionne, l'ID doit être un ObjectId. si ce n'est pas le cas, utilisez simplement {_id: myquery}
dans le nœud js, avez-vous besoin de créer une structure comme pour les champs d'entrée côté client?
essayez d'utiliser delete ({query}) ou deleteMany({query})
as deleteMany supprime plusieurs enregistrements en faisant correspondre la requête
pouvez-vous publier quelles sont les données de votre collection