Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes |
txs:peertube-a18:concepts_sequelize [2018/12/18 17:53] – andres | txs:contrib:peertube_a18:concepts_sequelize [2020/02/14 15:22] – ↷ Page déplacée de txs:peertube_a18:concepts_sequelize à txs:contrib:peertube_a18:concepts_sequelize qduchemi |
---|
==== Introduction à Sequelize ==== | ====== Introduction à Sequelize ====== |
| |
Sequelize est un ORM ([[https://en.wikipedia.org/wiki/Object-relational_mapping | Object-relational mapping]]) SQL basé sur les [[https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | promesses ]]. | Sequelize est un ORM ([[https://en.wikipedia.org/wiki/Object-relational_mapping | Object-relational mapping]]) SQL basé sur les [[https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | promesses ]]. |
=== Notion de promesse en JavaScript === | === Notion de promesse en JavaScript === |
| |
// Les promesses sont de moins en moins utilisées [[ https://hackernoon.com/6-reasons-why-javascripts-async-await-blows-promises-away-tutorial-c7ec10518dd9 | au profit de async/await]], mais elles sont encore utilisées dans le code de PeerTube, ainsi que par Sequelize. // | Les promesses sont de moins en moins utilisées [[ https://hackernoon.com/6-reasons-why-javascripts-async-await-blows-promises-away-tutorial-c7ec10518dd9 | au profit de //async/await//]], mais elles sont encore utilisées dans le code de PeerTube, ainsi que par Sequelize. |
| |
Extrait de [[ https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | MDN ]]: | Extrait du [[ https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | MDN ]]: |
| |
> L'objet ''Promise'' (pour « promesse ») est utilisé pour réaliser des traitements de façon asynchrone. Une promesse représente une valeur qui peut être disponible maintenant, dans le futur, voire jamais. | > L'objet ''Promise'' (pour « promesse ») est utilisé pour réaliser des traitements de façon asynchrone. Une promesse représente une valeur qui peut être disponible maintenant, dans le futur, voire jamais. |
* La méthode ''then'' retournera à son tour un objet ''promise''. | * La méthode ''then'' retournera à son tour un objet ''promise''. |
| |
Pour illustrer ceci, voici un exemple de [[ https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | MDN ]]: | Pour illustrer ceci, voici un exemple tiré du [[ https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise | MDN ]]: |
<code> | <code> |
doSomething().then(function(result) { | doSomething().then(function(result) { |
.then(null, failureCallback); | .then(null, failureCallback); |
</code> | </code> |
| |
La fonction ''doSomething()'' retourne ''result'', qui est passé en argument à ''doSomethingElse'', qui à son tour retournera ''newResult'', et ainsi de suite. | La fonction ''doSomething()'' retourne ''result'', qui est passé en argument à ''doSomethingElse'', qui à son tour retournera ''newResult'', et ainsi de suite. |
| |