Tag Archives: ActiveSupport

ActiveSupportを読む: ActiveSupport::Concern

こんにちは、鈴木です。

先日、「ActiveSupport::Concern でハッピーなモジュールライフを送る」で ActiveSupport::Concern をご紹介しましたが、きっと裏側では色々なテクニックが使われているのではないでしょうか。
続きを読む...

ActiveSupport::Concern でハッピーなモジュールライフを送る

こんにちは、鈴木です。

 

以前のエントリで「includeされた時にクラスメソッドとインスタンスメソッドを同時に追加する頻出パターン」をご紹介しました。
続きを読む...

ActiveSupport の strip_heredoc でヒアドキュメントを綺麗に書く

こんにちは、鈴木です。

ActiveSpport の strip_heredoc というメソッドをご存知でしょうか?

 
行頭の不要なインデント
以下のスクリプトを見てください。
続きを読む...

ActiveSupportを読む: Module#alias_method_chain

こんにちは、鈴木です。

「Rails: alias_method_chain: 既存の処理を修正する常套手段」では alias_method_chain をご紹介しました。
続きを読む...

Rails: alias_method_chain: 既存の処理を修正する常套手段

こんにちは、鈴木です。

 

既存のメソッドの動作を少しだけ変更したい、という場合に使われる常套手段をご紹介します。
続きを読む...

ActiveSupportを読む: Object#in? で含んでる?

こんにちは、鈴木です。

前回読んだ Hash#reverse_merge は、着目している変数をレシーバにできる便利なメソッドでした。
続きを読む...

ActiveSupportを読む: Hash#reverse_merge

こんにちは、鈴木です。

ActiveSupport では Ruby のコアクラスに多くの拡張を提供しています。

その中に、「core_ext/hash/reverse_merge.rb」で定義されている Hash#reverse_merge があります。
続きを読む...

Ruby/Rails: Enumerable の便利な述語メソッド

こんにちは、鈴木です。

 

Ruby のコレクションクラスは Enumerable モジュールを include しています。
続きを読む...

ActiveSupport の便利メソッド: try, blank?, present?, presence

こんにちは、鈴木です。

便利なメソッドやイディオムの存在を知ってしまったときの楽しさは、Ruby/Railsを使う理由の一つではないでしょうか。

今回は、便利メソッドの宝庫 ActiveSupport からいくつかご紹介したいと思います。
続きを読む...

Array#extract_options! で Rails API のように柔軟な引数を取るメソッドを定義する

こんにちは、鈴木です。

Rails が提供する API の特徴として、引数の指定が柔軟である点が挙げられると思います。
続きを読む...