A presentation at ParisRB Meetup in in Paris, France by Sunny Ripert
2 / 27
3 / 27
EUR 4 / 27
USD GBP CAD … 5 / 27
💰
6 / 27
42.to_money(:eur).exchange_to(:usd).to_f # => 48.8 7 / 27
8 / 27
🏦
9 / 27
10 / 27
11 / 27
12 / 27
13 / 27
14 / 27
15 / 27
16 / 27
class DailyRateUpdater include Sidekiq::Worker def perform # 1. Récupérer les taux de change du jour # 2. Les enregistrer en base de données end end 17 / 27
42.to_money(:eur).exchange_to(:usd).to_f # => 48.8 18 / 27
😍
19 / 27
20 / 27
class DailyRateUpdater include Sidekiq::Worker def perform ActiveCurrency::AddRates.call(%w[EUR USD]) end end 21 / 27
ActiveCurrency::Rate.value_for(“EUR”, “USD”, 1.day.ago) # => 1.162 22 / 27
✨ Avant ActiveCurrency Mise à jour Démarrage Tâche journalière Lecture Mémoire Base de données (+ cache) 23 / 27
Inconvénients Performances moins bonnes en lecture 😔 24 / 27
Avantages 📆 Choisir quand mettre à jour le taux Ne pas dépendre d’un appel API au démarrage Historiser les taux de conversion utilisés Utiliser les mêmes taux de change sur chaque serveur 📈 💥 🤝 25 / 27
active_currency v1.0 26 / 27
Merci ! github.com/sunny/active_currency @sunfox sur Twitter @sunfox@mamot.fr sur Mastodon KissKissBankBank.com cults3d.com Je vous ait dit qu’on recrutait ? Icône “Hello” de Sewon Park. CC BY Icône “Love” de Gregor Cresnar. CC BY Icône “Recovering heart” de Sergey Demushkin. CC BY Icône “Party” de Adrien Coquet. CC BY 27 / 27
Comment récupérer la devise en cours sous Ruby on Rails
Here’s what was said about this presentation on social media.
Tonight at @parisrb, at @Kissbankers
— Sylvain Abélard (@abelar_s) October 2, 2018
* Hacktoberfest
* Paris Crystal meetup
* Jekyll on OVH
* Hash initializer (default value)
* Currencies management (gem eu_central_bank and other techniques)
* CI with docker & gitlab
Photo: @sunfox on currencies, a natural speaker. pic.twitter.com/wVD4myKKpa
@sunfox qui présente les avantages de la gem active_currency devant l'assemblée de @parisrb chez @Kissbankers #lartdelimpro ;) pic.twitter.com/gxfddp3cz6
— agathe begault (@gayahel) October 2, 2018
And now active_currency is pushed on rubygems, the v1.0.0 commit was done live before our eyes, and properly applauded.
— Sylvain Abélard (@abelar_s) October 2, 2018
Thanks @sunfox@mamot.fr !
active_currency (1.0.0): Store your currency. https://t.co/d2umv1eMW8
— RubyGems (@rubygems) October 2, 2018