J'ai un modèle user
dans lequel j'ai une méthode pour voir si l'utilisateur a gagné un « badge »rails, `flash [: remarque]` dans mon modèle?
def check_if_badges_earned(user)
if user.recipes.count > 10
award_badge(1)
end
S'ils ont gagné un badge, les pistes de méthode award_badge
et donne à l'utilisateur le badge associé . Puis-je faire quelque chose comme ça?
def check_if_badges_earned(user)
if user.recipes.count > 10
flash.now[:notice] = "you got a badge!"
award_badge(1)
end
Question supplémentaire!(boiteux, je sais)
Où serait le meilleur endroit pour moi de garder toutes ces « conditions » pour que mes utilisateurs peuvent gagner des badges, semblable à stackoverflows badges je suppose. Je veux dire en termes d'architecture, j'ai déjà badge
et badgings
modèles.
Comment puis-je organiser les conditions dans lesquelles ils sont gagnés? Certains d'entre eux sont complexes, comme l'utilisateur s'est connecté 100 fois sans commenter une seule fois. etc. Donc il ne semble pas y avoir un endroit simple pour mettre ce genre de logique car il couvre à peu près tous les modèles.
Une sacrément bonne réponse. –