Question

Je lis un article et je les principes qui s'y trouvent pour écrire un vérification de l'administration pour mes contrôleurs. Fondamentalement, il vérifie pour voir ce contrôleur que vous êtes et je créer un tableau disant que si cette personne comme la permission de voir ce contrôleur, que de trouver, le transmettre.

L'auteur de l'article dit que les lecteurs ne devraient pas utiliser l'exemple de code tel qu'il était défectueux et qu'ils devraient utiliser son plug-in (qui bien sûr est maintenant obsolète). Et il dit:

  

« il y a des problèmes avec le code ci-dessus lors de l'exécution en mode de production en raison de l'utilisation des variables de classe et la mise en cache de classe ».

J'ai un test et je ne pense que cela pourrait être dû à cela, mais je ne suis pas tout à fait sûr quelle partie du code que je ne devrais pas utiliser. J'ai eu les éléments suivants (en application.rb):

 controller = params[:controller]
 action = params[:action]

Mais j'ai changé cela à:

controller = self.class.name
action = params[:action]

Comment accéder correctement le nom de l'action? Et en général ce genre de choses que vous pouvez faire en mode de développement que vous ne pouvez pas faire dans la production?

Était-ce utile?

La solution

Avez-vous envisagé un rôle d'autorisations plugiciel à la place? Voir la question stackoverflow suivante:

qui rails brancher est le mieux pour les autorisations basées sur les rôles? (S'il vous plaît fournir une candidature par réponse)

Je ne suis pas au courant de tous les problèmes avec l'utilisation de la production du code que vous avez collé. Le plug-in en question pourrait avoir des problèmes en raison d'un éventuel détournement de @@ cependant, je ne l'ai pas inspecté à fond.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top