Je suis juste en train d'apprendre ruby sur rails et j'ai une table des rôles utilisateur (propriétaire, administrateur et utilisateur). Il y aura des endroits dans le code où je dois vérifier le rôle de l'utilisateur et montrer différentes options. Est-ce que quelqu'un sait comment faire cela sans recourir à des chiffres magiques ou d'autres méthodes laides?Rails Types énumérés ou alternatives
Dans des applications web ASP.Net j'ai travaillé je l'ai vu ceci fait par l'utilisation des types énumérés:
public enum UserRole { Owner = 1, Admin = 2, User = 3 }
// ...
if (user.Role == UserRole.Admin)
// Show special admin options
Chaque rôle différent dans la base de données se reflète comme un type énuméré avec une valeur défini sur l'ID de ce rôle dans la base de données. Cela ne semble pas être une très bonne solution, car cela dépend de la connaissance de la base de données qui peut changer. Même si c'est la bonne façon de gérer quelque chose comme ça, je ne sais pas comment utiliser les types énumérés dans les rails.
J'apprécierais tout aperçu de cette question.
En outre, Bates Ryan a un bon petit bijou d'autorisation appelé cancan et un tutoriel bien sur son site (http://railscasts.com/episodes/192 -authorisation-avec-cancan) –