Rails / 誕生月でユーザーを検索する

そんなことはまれにしかないでしょう。
誕生日っていったらだいたい期間指定だからね。
でも必要なことがあったのさ。

birth_day はDate型とします。

date_of_birth の方が英語的に自然かも。


# スコープなら
scope :filter_by_birth_month, -> (month) {
 where('extract(month from birth_day) = ?', month)
}

# クラスメソッドなら
def self.filter_by_birth_month(month)
  where('extract(month from birth_day) = ?', month)
end

これもまた PostgreSQLの話題か…。

extract 便利。
集計作業してるとこういうのが増えてきそう。

ではー。

参考

ruby on rails - ActiveRecord Find By Year, Day or Month on a Date field - Stack Overflow

何かありましたらコメントをどうぞ

comments powered by Disqus

人気の記事

950 Points チリ出身のギタリストが弾くドラゴンボールZがむちゃくちゃかっこいい…
774 Points Wordpress + Heroku + PostgreSQL + Amazon S3 = ¥0 / 無料でサイト運営
700 Points Rubyのチートシート 変数 / クラス / モジュール
524 Points Rubyのチートシート / アクティブサポート
451 Points 紙のデザイナーがウェブ開発できるようになるまでに必要なこと
435 Points Rails / Google Analyticsのデータを使って分析や管理画面のためのグラフをつくる
323 Points RailsとHerokuでノーティフィケーションをプッシュする / PusherとTurbolinksの兼ね合い
222 Points Rails / RSpec テスト書いたことない メンドクサイ(n´Д`)という時のチートシート
193 Points Rails / Ajaxを使って画面遷移しない一時保存機能をつける
193 Points Protractorでスクレイピングしてみた