Quelqu'un peut-il me dire comment sauter tout avant les filtres dans les rails 3.
in rails 2.x Nous pourrions faire p>
skip_filter filter_chain
7 Réponses :
ne l'a pas essayé, mais cela pourrait fonctionner:
réinitialiser_callbacks code> supprimera complètement le rappel pour l'ensemble du contrôleur et ne permettra pas : sauf code> ou : seul code> Mots-clés. Si cela est acceptable, il est mieux et plus compatible avec l'avant que mon code.
Ceci est certainement piraté profondément dans les rails du ventre et vous feriez mieux de préciser les rappels à la main, mais la ligne suivante fera le travail:
eval %[skip_filter #{_process_action_callbacks.select { |c|
[:before, :after, :around].include? c.kind }.collect{|c|
c.filter.inspect}.join(", ")
}]
Essayez cette
before_filter :setup _process_action_callbacks.map(&:filter) #=> [:setup]
Besoin d'éclater l'argument pour que cela fonctionne: `skip_filter (* _ process_action_callbacks.map (&: filtre))
Si vous souhaitez spécifier: Seulement ou: sauf à Skip_filter, utilisez ce qui suit:
skip_filter(*_process_action_callbacks.map(&:filter), :only => [:method1, :method2])
skip_before_filters http://ap.rubyonrails.org/classes/ActionController/Filters/ClassMethods.html#M000132
Il n'y a pas de telle méthode!
@Vemv apidock.com/rails/abstractController/callbacks/classmethods/ ... a >
Qui saute un seul filtre, non? Son nom est dans le singulier, contrairement au nom de la méthode spécifié dans votre réponse.
Besoin de sauter tous les filtres em> est probablement causé par héritage d'une application d'application personnalisée. dans mon exemple de scénario, au lieu de supprimer le avant_filter < / code> S de Un autreController code>, il suffit de le laisser hériter de actioncontroller :: base code>. p> p>
Pour les rails 5, j'ai utilisé Vous devez vérifier le rappel.Kind, sinon _process_action_callbacks retournera tous les rappels, y compris Le après code> et et autour code>, qui soulevera une exception avec skip_before_action code> méthode. p> .Compact code> à la fin supprime nuls code> de la matrice résultante. p> p>