Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ruby on Rails - Active support超便利メソッド10選

1,291 views

Published on

「Ruby / Ruby on Rails ビギナーズ勉強会 第8回」での発表内容です。
Ruby on Railsに搭載されているコンポーネント「Active Support」の便利なメソッドについて、紹介しています。

■イベントページはこちらです。
https://coedo-rails.doorkeeper.jp/events/32028

=============================================================

「CoEdo.rb」が運営する「Ruby / Ruby on Railsビギナーズ勉強会」Ruby、Ruby on Railsなどで開発したい、触りたいための初心者勉強会&もくもく会です。

開催の連絡は以下の方法で受け取ることができます。

## DoorKeeperグループ
イベント申し込みを受け付けている、DoorKeeper でのグループです。
https://coedo-rails.doorkeeper.jp/

## Facebookグループ
イベント告知や技術情報をお互いにシェアしています。
https://www.facebook.com/groups/rorbeginners/

## Twitterハッシュタグ
ハッシュタグは、 #rubybg です。
Twitterにもイベント、勉強会の情報を流しています。

[★Ustreamでは、勉強会を生中継しています。](http://www.ustream.tv/channel/ruby-ruby-on-rails-%E3%83%93%E3%82%AE%E3%83%8A%E3%83%BC%E3%82%BA%E5%80%B6%E6%A5%BB
D%E9%83%A8)

[★Youtubeでは、ショートセッションを収録しています。](https://www.youtube.com/playlist?list=PL2ojdc4KhtHniIyIUx3AdO621ydzz5zpP)

Published in: Engineering
  • Be the first to comment

Ruby on Rails - Active support超便利メソッド10選

  1. 1. Ruby / Ruby on Railsビギナーズ倶楽部 Active Support 超便利メソッド10選!! 2015.10.24
  2. 2. Self-Intoroduction 徳島県出身です (ó `o) 一緒に勉強しましょう( ́ ▽ ` )ノ 勉強会やってます! アプリケーションエンジニア(Rails/LAMP/Java/Oracle) アウトプットを主軸においた、勉強会を運営しています:) Click
  3. 3. 1)Railsの全体像を知ろう! Today's Agenda 2)ActiveSupportの基本 3)超便利メソッド10選!!
  4. 4. 1)Railsの全体像を知ろう! Ruby on Railsは、機能毎のコンポーネントを 組み合わせて構成されています。 Ruby on Railsの構成要素を 確認していきましょう。
  5. 5. 1)Railsの全体像を知ろう! Railtie (中核) コントローラ層 AbstractController ActionController ActionMailer ActiveModel モデル層 ActiveRecord ビュー層:ActionView ルーティング:ActionDispatch ユーティリティ:ActiveSupport Webサービス:ActiveResource 国際化:I18n テスト:test/unit ライブラリ管理:Bundler
  6. 6. 1)Railsの全体像を知ろう! Railtie (中核) コントローラ層 AbstractController ActionController ActionMailer ActiveModel モデル層 ActiveRecord ビュー層:ActionView ルーティング:あ ユーティリティ:ActiveSupport Webサービス:ActiveResource 国際化:I18n テスト:test/unit ライブラリ管理:Bundler 今日は、ActiveSupportを 勉強します!
  7. 7. 2)ActiveSupportの基本 Rubyに便利な機能が追加されたライブラリ ・Rubyの機能だと思っていても、 ActiveSupportの機能だったりもします。 ・ActiveSupportへの理解を深めることが、 Railsの理解に繋がります。 ・Railsでは、基本的に全ての  Active Supportが読み込まれます。
  8. 8. 2)ActiveSupportの基本 Sinatra等では、コア拡張機能を読み込んで利用します。 require 'active_support' require 'active_support/core_ext/object/blank' require 'active_support' require 'active_support/core_ext' 必要な定義だけを選ぶ場合 すべてのコア拡張機能を読み込む
  9. 9. 3)超便利メソッド10選!! blank? ・nilとfalse ・空白文字 (whitespace) だけで構成された文字列 ・空欄の配列とハッシュ 以下の値を、空白(blank)とみなします。 present? 「!blank?」メソッドと同じ意味です。
  10. 10. 3)超便利メソッド10選!! presence present?がtrueの場合は自身のレシーバを返し、 falseの場合はnilを返します。 value.present? ? value : nil   ↓ value.presence # シンプルに書けます。
  11. 11. 3)超便利メソッド10選!! in? 1.in?([1,2]) # => true "lo".in?("hello") # => true 25.in?(30..50) # => false あるオブジェクトが他のオブジェクトに含まれているか どうかをテストします。
  12. 12. 3)超便利メソッド10選!! to_query current_user = "kanako" current_user.to_query( user ) ↓ "user=kanako" URLのクエリストリングを生成してくれます。
  13. 13. 3)超便利メソッド10選!! try # tryメソッドを使用しない場合 unless @number.nil? @number.next end # tryメソッドを使用した場合 @number.try(:next) nilでない場合にのみオブジェクトのメソッドを呼び出します。
  14. 14. 3)超便利メソッド10選!! sum [1, 2, 3].sum # => 6 (1..100).sum # => 5050 sumメソッドはenumerableの要素を合計します。 Enumerableの 拡張
  15. 15. 3)超便利メソッド10選!! remove "Hello World".remove(/Hello /)  ↓ "World" removeメソッドを実行すると、 すべての該当パターンが削除されます。 Stringの拡張
  16. 16. 3)超便利メソッド10選!! to_date、to_time、to_datetime "2010-07-27".to_date # => Tue, 27 Jul 2010 "2010-07-27 23:37:00".to_time # => Tue Jul 27 23:37:00 UTC 2010 "2010-07-27 23:37:00".to_datetime # => Tue, 27 Jul 2010 23:37:00 +0000 Stringの拡張
  17. 17. 3)超便利メソッド10選!! Time Time.now #=> 2015-10-24 07:30:09 +0900 Time.now.all_day, Time.now.all_week, Time.now.all_month Time.now.all_quarter, Time.now.all_year # 過去を返す Time.now.weeks_ago(1) #=> 2015-10-17 07:35:38 +0900 #未来を返す Time.now.months_since(1) #=> 2015-11-24 07:37:07 +0900 # 指定されたはじめの時刻を返す Time.now.beginning_of_hour #=> 2015-10-24 07:00:00 +0900 # 指定された終わりの時刻を返す Time.now.end_of_hour #=> 2015-10-24 07:59:59 +0900 Numericの拡張
  18. 18. ま と め Active Supportには、その他たくさんの 便利な機能があります。 Array、Hash、Date、DateTimeの拡張、 ラッピング、複製・・・ 紹介させていただいた以外でも強力な 機能が、たくさんあるので試してみてください。
  19. 19. 参 照 情 報 http://railsguides.jp/active_support_core_extensions.html ・RailsGuides ー Active Support コア拡張機能 ー
  20. 20. Let's study together! Thank you :)

×