Sequelize.js supprimer la requête?
Est-il un moyen d'écrire un delete/deleteAll requête comme findAll?
Par exemple je veux faire quelque chose comme ceci (en supposant Monmodèle est un Sequelize modèle...):
MyModel.deleteAll({ where: ['some_field != ?', something] })
.on('success', function() { /* ... */ });
Vous devez vous connecter pour publier un commentaire.
Pour toute personne utilisant les Sequelize version 3 et ci-dessus, utilisez:
Sequelize Documentation - Sequelize Tutoriel
J'ai cherché en profondeur dans le code, étape par étape dans les fichiers suivants:
https://github.com/sdepold/sequelize/blob/master/test/Model/destroy.js
https://github.com/sdepold/sequelize/blob/master/lib/model.js#L140
https://github.com/sdepold/sequelize/blob/master/lib/query-interface.js#L207-217
https://github.com/sdepold/sequelize/blob/master/lib/connectors/mysql/query-generator.js
Ce que j'ai trouvé:
Il n'y a pas un deleteAll méthode, il y a un destroy() la méthode que vous pouvez appeler sur un document, par exemple:
Ne sais pas si la question est toujours d'actualité mais j'ai trouvé ce qui suit sur Sequelize de la documentation.
http://sequelizejs.com/blog/state-of-v1-7-0
Espère que cela aide!
where
objet (par exemple,{someId: 123}
).Cet exemple montre comment vous promet au lieu de rappel.
Vérifier ce lien pour plus d'info
http://docs.sequelizejs.com/en/latest/api/model/#destroyoptions-promiseinteger
Dans la nouvelle version, vous pouvez essayer quelque chose comme cela
J'ai écrit quelque chose comme cela pour les Voiles d'un alors que, dans le cas où il vous permet de gagner un peu de temps:
Exemple d'utilisation:
Source:
à partir de: orm.js.
Espère que ça aide!
Voici un ES6 à l'aide de l'Attendent /Async exemple:
Veuillez noter que je suis en utilisant le
!!
Bang Bang de l'Opérateur sur le résultat de l'attendre ce qui va changer le résultat en une valeur de type Boolean.