Rails nouveauB ici, il faut donc ajouter autant de détails à la réponse que vous le souhaitez et ne hésitez pas à me dire que je fais mal.Rails + Stripe: où stocker quel type d'abonnement a un utilisateur?
Contexte: Je construis un SaaS rails app et un plan pour ajouter l'intégration de bande (paiement) bientôt. Je voudrais construire la fonctionnalité qui différencie les différents types de compte (plans d'abonnement) avant d'intégrer stripe.
J'utilise beaucoup si/déclarations sur d'autre par l'application selon le type de compte (par exemple, libre, niveau 1, niveau 2) pour afficher/masquer la fonctionnalité appropriée à l'utilisateur. Mes déclarations de base ressemblent à ceci:
<% if current_user.account_level == "1" %>
your account level is 1
<% elsif current_user.account_level == "2" %>
your account level is 2
<% else %>
<% end %>
Cela suppose que je vais garder trace de ce « niveau du compte » l'utilisateur dans le modèle utilisateur (ou un autre modèle). Est-ce l'endroit approprié pour le faire? Techniquement, Stripe a les données les plus récentes (c'est-à-dire si la carte a été annulée, le niveau du compte serait différent). Dois-je utiliser l'API Stripe directement pour déterminer le niveau du compte? Il semble que je devrais avoir un enregistrement de cela quelque part dans mes données.
Y a-t-il d'autres bonnes pratiques que je devrais garder à l'esprit tout en développant en sachant que je vais pour l'intégrer Stripe à l'avenir?