Rails 3: fonctions d'Appel à l'intérieur de contrôleurs
Si je veux avoir les fonctions à être appelée à l'intérieur de contrôleurs, où dois-je les mettre?
Veuillez donner plus d'info, vous voulez qu'il soit disponible pour tous les contrôleurs?
Ce type de fonctions?
oui pour tous les contrôleurs, mais je serais heureux de savoir comment limiter à un contrôleur.
par exemple, je veux appeler une fonction qui retourne un code unique.
Ce type de fonctions?
oui pour tous les contrôleurs, mais je serais heureux de savoir comment limiter à un contrôleur.
par exemple, je veux appeler une fonction qui retourne un code unique.
OriginalL'auteur donald | 2011-01-05
Vous devez vous connecter pour publier un commentaire.
si vous voulez qu'il soit local à un contrôleur puis tout ce que vous devez faire est d'ajouter à la commande que vous souhaitez utiliser.
à tous les contrôleurs, vous pouvez mettre à l'intérieur le contrôleur de l'application, car tous les contrôleurs sont sous-classés.
ApplicationController
Si vous souhaitez accéder à votre point de vue, alors vous pouvez créer un helper
ApplicationHelper
ApplicationController
exemple, doit être protégé, pas privé.vrai. Oublié de le changer quand je copie & collé à partir du premier exemple. merci pour le spotting.
vraiment utile ...
OriginalL'auteur ddayan
Si votre code est destiné à être utilisé uniquement sur votre contrôleurs, mettre la fonction à l'intérieur d'un contrôleur de fonction protégée (le plus simple serait de le mettre à l'intérieur de ApplicationController).
Si vous devez appeler la fonction sur la vues, puis le mettre sur un helper, comme ddayan dit.
Si vous aussi, vous devez appeler la fonction de modèles, puis la façon la plus simple de le faire est de mettre un module dans le répertoire /lib/.
Vous aurez également besoin de l'inclure avec un initialiseur:
À partir de ce moment, vous pouvez utiliser la fonction comme ceci:
Si vous faites cela très souvent, envisager la création d'un gem.
OriginalL'auteur kikito
Aussi regarder
before_filter
etafter_filter
, ils sont souvent utiles dans ce genre de chosesOriginalL'auteur megas
ApplicationController est ici que, depuis que chaque Contrôleur hérité d'elle.
OriginalL'auteur standup75