Rails 5.0.0.beta2 触ってみた
モリジュン (@zyunnosuke)
自己紹介
モリジュン (@zyunnosuke)
「酒と泪とRubyとRailsと」書いてます!
(๑•̀ㅁ•́๑)✧
Rails5 Measure Version Up!
• いよいよRails のメジャー・バージョンアップ
• 2015/12/18 - 5.0.0.beta1 released
• 2016/01/25 - 5.0.0.beta1.1 released
• 2016/02/01 - 5.0.0.beta2 released ← 今ココ
• 2016/02/16∼23 - 5.0.0 rc1 release予定
• 勉強がてら新機能を触ってみたので報告
Action Cable
Action Cableって何?
• Action CableはWebSocketをハンドリン
グするためのフレームワーク
• ちなみに、WebSocketとはサーバと

ブラウザ間での双方向通信のプロトコル
• チャットやNotificationをRails Wayで

簡単に実装することができる
チャットアプリを作ろう
Generatorでひな形を生成
チャットアプリを作ろう
ルーティングを修正
チャットアプリを作ろう
JavaScript側を修正
チャットアプリを作ろう
ActionCableのクラスを作成
チャットアプリを作ろう
Messageをテーブルに保存、非同期でJobを起動
チャットアプリを作ろう
保存されたメッセージを非同期で配信
チャットアプリを作ろう
あとはViewを作るだけ
チャットアプリを作ろう
チャットアプリ完成 ʕ•̀ω•́ʔ✧
Action Cableの感想
• Viewのキャッシュなど、Railsの今までの

知識を有効活用できる
• 一時的な接続不良やエラー時のリカバリ等、

本番適用には色々考えないといけなそう
• Basecamp 3では既に本番適用。けど、ネッ
トの知見がたまるまで少し様子見がいいかも
http://morizyun.github.io/blog/rails-5.0.0.beta1-new-function-official-blog/
API Mode
API Modeって何?
• プログラムがアクセスすることを前提と
したJSON APIに適したアプリ
• Rails Wayでビジネスロジックをスピー
ディかつ柔軟にAPIを構築できる
API Modeのメリット
• 通常のWebアプリよりも、Middlewareが通
常より制限されることで応答性能が向上する
• GeneratorでのViewやAssetの生成が行われ
ない(フロントエンド側が行うことを想定)
• Railsのプラクティスをそのまま使いつ
つ、性能が向上しているので実用的
http://morizyun.github.io/blog/rails-5.0.0.beta1-new-function-official-blog/
ActiveRecord
Attributes
ActiveRecord Attributes
DBに保存する独自の型を持つことができる
http://morizyun.github.io/blog/rails-5.0.0.beta1-new-function-official-blog/
ActiveRecord::
Relation#or
ActiveRecord::Relation#or
orを正確に解釈できるようになった
(近日中にブログ公開予定)
ActiveRecord::Relation
#left_outer_joins
#left_outer_joins(#left_joins)
外部結合を行う #left_outer_joins(#left_joins)
(近日中にブログ公開予定)
Enumerable
#pluck
Enumerable#pluck
Enumerableから、特定の要素を抽出
(近日中にブログ公開予定)
Enumerable
#without
Enumerable#without
Enumerableから特定の要素を取り除く
(近日中にブログ公開予定)
etc…
Change Log
(近日中にブログ公開予定)
• ActionPack CHANGELOG
• ActionMailer CHANGELOG
• ActionView CHANGELOG
• ActiveRecod CHANGELOG
• ActiveModel CHANGELOG
• ActiveSupport CHANGELOG
• ActiveJob CHANGELOG
• Railties CHANGELOG
まとめ
まとめ
• Action Cable => チャット作りやすそう
• API Mode => APIを作りはじめやすそう
• その他いろいろ => 地味な進化が嬉しい

Rails 5.0.0.beta2 触ってみた