Recommend Me


Mardi 16 décembre 2008

Utiliser before à la place de before_filter dans Bivouac

Classé dans : Camping, Projets, Ruby, bivouac — greg @ 12:16

Dans un article précédent, je vous avais montré comment utiliser before_filter dans Bivouac. before_filter ayant été remplacé, dans la dernière version de Bivouac, par la solution proposée par Magnus Holm, voici comment modifier cet exemple pour qu’il fonctionne en version 0.4.0.

La seule modification concerne le controller. En effet, vous pouvez supprimer tout ce qui à trait à la gestion du filtre, soit la classe AdminCheckLogin et l’appel à before_filter :

module TestFilter::Controllers
  # …

  class AdminCheckLogin
    def self.filter( state )
      if state[:user].blank?
        return AdminLogin
      else
        return nil
      end
    end
  end
end

before_filter AdminCheckLogin, :only => [AdminHome]

A la place de tout cela, vous devez ajouter, ou vous voulez, le code suivant dans votre projet :

module TestFilter
  before :AdminHome do
    if @state[:user].blank?
      redirect R(Controllers::AdminLogin)
    end
  end
end  

Comme vous pouvez le voir, l’appel à before se fait dans le module TestFilter et non dans le controller directement. Il faut donc faire attention lorsque vous faire la redirection !

• • •

Pas de commentaire »

Pas encore de commentaire.

RSS des commentairesTrackBack URI

Laisser un commentaire

You must be logged in to post a comment.

Powered by: WordPress • Template adapted from the Simple Green' Wench theme - RSS