Les différents modèles de votre application Rails risquent régulièrement d'avoir à gérer des problématiques récurrentes. Si c'est le cas, vous pourriez être intéressés d'ajouter dans votre application des Concerns tels que Trashable, Searchable, Visible, Movable, Taggable... Ces Concerns encapsulent à la fois les accès aux données et la logique métier.
Ce billet explique à quoi sert Concern et comment l'utiliser.
Commentaires
Vous devez
vous inscrire
ou
vous connecter
pour poster un commentaire
Les models ne sont pas plus light avec les concern. C'est juste un split de fichier.
Il y a presque 12 ansMais du coup, ça te permet de mutualiser du code si plusieurs modèles doivent gérer les mêmes problématiques. On peut aussi imaginer des gems qui répertorient des Concerns les plus courants.
Il y a presque 12 ansTu te retrouve ainsi avec un model qui possède plein de méthode inutile car utiliser dans des contexts des autre models.
Tu peux faire exactement la même chose avec un model Search par exemple et du duck-typing. Ton model original est light, tu mutualises du code et tu tests plus facilement.
Il y a presque 12 ans