by shigemk2

当面は技術的なことしか書かない

Rails4 in Action Rails4でアプリを作ってみた話 #webcat

f:id:shigemk2:20131116233105g:plain

@kentaro
ぺぱぼの人

SQALE
Triglav

Living on the Edge

Rails command

rails new myap --edge

Living on the Edge is harder than you might imagine.

これからの話はあくまでEdge Railsの話です。

Edge Railsを使うことでRailsの内部を知ることが出来た

参考書籍
Crafting Rails Applications

what's new in Rails4

いろいろハードルが高い

タメになるリンク
Rails4 Release Notes
Edge Guides
Edge API Reference
Rails 4 compilation links

No big changes, but too many newly introduced and removed
(今からの話はアプリ作ってたらぶつかったら話)

Rails Guides now got responsive design!
add_flash_types
Web routes viewr bundled in Rails4

root...
instead of 'root to: 'main#index''

root 'main#index'

concern
index option(インデックス貼るのを忘れくくなります) We never neglect to add indices!
scaffold generator now use 'content_tag_for'
AR finder methodsが消える
button_to_functionも消える
古い様式のfindも消える
active_record_deprecate_finders

Strong Parameters
controller have responsibilety to secure mass assignment instead of models.
(まあパラメータの処理をコントローラでやろうよって話)

attr_accessible (Old way)
ActionController::Parameters
accepts_nested_attribute_for

Queue API (メールを送るときに非同期で送れて便利です)

Define Job and Enqueue It.
Queueに投げて実行してくれる。

ActionController::Live

streamがどんどん実行してくれる Works fine with "Server-Sent Events"
テンプレートを部分的に送る

QueueとLiveを使って何が出来るのか?

websocketは覚えるのが大変ですわ
なのでQueueとLiveでチャットアプリぽいものを作ることが出来る
SSE Rails Redisを組み合わせてチャットアプリぽいものを作った
(横に並べられるからとてもスケーリング)

まとめ

Living on the Edge Rails is fun and good lesson
Rails 4 is really promising and exciting
Tye Rails4 ASAP!
I'm waiting for your commit to Triglav
(まあ自分で作る分にはRails4つかってもいいんじゃない?)

その場で入れたらRun Methodが呼ばれる