Web + Life Hack

〜True But Useless〜

【rails】最近覚えた「継承されたコントローラーのメソッドをskipするrailsのメソッド、『skip_before_filter』」

skip_before_filter :除外したいメソッド名

をコントローラー側で定義すると継承したいクラスで飛ばしたいメソッドを飛ばすことができます。

僕は継承したクラスに「ログイン認証メソッド」があり、それがCGIのレスポンス時に働き

http ステータスコード「302(http://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89)

を回避するために使用しました。

 

「このコントローラーではこのメソッド使いたくないな」という問題が発生するかはどうかは分かりませんが、覚えていて損はないと思います。

 

追加

このメソッドはオプションがあって、

skip_before_filter :除外したいメソッド名, only: [:適用させたいメソッド名1, :適用させたいメソッド名2]

とすることで、「特定のメソッドのみ」適用することも出来ます。

 

追加2

instacodeで写真あげようと思ったけど、何か気持ち悪いことなってるからやめた。

エイプリルフール?