J'ai un modèle Utilisateur qui contient des informations telles que nom d'utilisateur, email, ville natale, etc. Lorsque l'utilisateur est connecté, il peut modifier n'importe laquelle de ses informations via la page d'affichage (/ users/723, par exemple). Je voudrais avoir une version "publique" de cette page qui peut être vue par quelqu'un qui n'est pas connecté ou par quelqu'un qui est connecté comme quelqu'un d'autre. Il aurait différents niveaux d'information sur l'utilisateur et ne disposerait d'aucun des liens pour éditer l'information.Comment afficher la version publique du profil utilisateur dans Rails?
Quelle est la manière la plus propre d'afficher correctement les trois versions différentes de cette page?
Addendum. J'utilise actuellement authlogic pour l'authentification et acl9 pour le contrôle d'accès. Cependant, je ne vois pas cela comme une question d'authentification et d'autorisation. Je pense que c'est une question de conception de contrôleur/vue. Si l'utilisateur est connecté ou possède les informations est accessoire. Si vous vouliez afficher les Widgets de trois façons différentes en fonction de l'état de la session, je pense que vous seriez capable d'utiliser la réponse à cette question.
Je suis d'accord avec Sam sur celui-ci, avec la légère mise en garde que, selon les différences, il peut être plus logique de faire les changements en ligne. Par exemple, sur un site où je veux juste activer la fonctionnalité d'édition rapide pour les admins, c'est une condition simple à l'intérieur de la vue, mais je ne veux pas pagayer aux partiels quand les différences seront si mineures. – scottru