Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rails 4.2→5.2アップデート
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
horikawa
May 29, 2019
Programming
450
0
Share
Rails 4.2→5.2アップデート
Rails 4.2を5.2にアップデートした時の流れをまとめました。
horikawa
May 29, 2019
More Decks by horikawa
See All by horikawa
Caching associations in rails
casix
1
330
Create Action Mailbox Sample Application
casix
1
430
Rails 6.0 Action Mailboxについて
casix
0
400
Other Decks in Programming
See All in Programming
Rethinking API Platform Filters
vinceamstoutz
0
4.8k
Coding as Prompting Since 2025
ragingwind
0
620
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.1k
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
210
「速くなった気がする」をデータで疑う
senleaf24
0
120
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
760
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
460
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
170
AIと共にエンジニアとPMの “二刀流”を実現する
naruogram
0
120
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
250
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
320
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
110
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Rails Girls Zürich Keynote
gr2m
96
14k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
Side Projects
sachag
455
43k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Become a Pro
speakerdeck
PRO
31
5.9k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
190
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
120
Transcript
Rails 4.2→5.2ʹ Ξοϓσʔτͨ͠ ງʢ@CASIXx1ʣגࣜձࣾπΫϧό
• ීஈʮcowcamoʯͱ͍͏ΞϓϦΛ։ൃͯ͠ ·͢ • αʔόαΠυɺRailsΛͬͯ·͢
࣮ͦΜͳʮcowcamoʯ ϲ݄લ·Ͱ...
Rails 4.2!!!
Ruby 2.3!!!
্͛ͳ͖Όʢ໋ײʣ
gemͷΞοϓσʔτ ͔ͨ͜͠͠ͱͳ͍Μ͕ͩ...
ʙ४උฤʙ
·ͣɺRubyΛ2.5ʹ্͛Α͏ ʢ࣌ɺ201811݄ࠒʣ
্͛ͨ Τϥʔग़ͳ͔ͬͨ
্͛Δ࣌ʹɺ ͍ͭͰʹRailsΞοϓσʔτ Ͱ͑ΔͷΛ༻ҙͨ͠
ಈ࡞֬ೝ߲ॻΛ࡞͓͍ͬͯͨ • ಈ࡞֬ೝͷγφϦΦΛ࡞Γ • ސ٬ͷಈ࡞Λ࠷ݶ୲อ͍ͨ͠ϥΠϯ • ۀ্ΫϦςΟΧϧͳՕॴ୲อ͍ͨ͠ͳ ͲΛఆٛ • ͦΕΛݩʹ߲ॻΛ࡞
ͱ͍͑ɺ ͜Ε͚ͩͰ৺ͱͳ͍...
ϦάϨογϣϯςετ ڧԽͤͶ
ϢχοτςετͷΧόϨοδΛ 80% ͙Β͍·Ͱ্͛ͨ
Issueࣄલ༻ҙ͠ͳ͖Ό
͝ஸೡʹΞοϓάϨʔυΨΠυ͕ ༻ҙ͞ΕͯΔͧʂ
ྔগͳw
None
...ϦϦʔεϊʔτΛݟΑ͏
Issue༻ҙ • 5.0, 5.1, 5.2 ͷϦϦʔεϊʔτͱʮcowcamoʯͷ ίʔυΛൺֱͯ͠ɺରԠ͖͢issueΛͬͨ • ࠓճɺେྔʹissue͕ग़ͦ͏ͳͷͰɺ֤όʔδϣϯ ͱ༏ઌͰϥϕϧΛ࡞͓͍ͬͯͨʢ͜Εྑ͔ͬ
ͨͰ͢ʂʣ • Rails5.0:MUST, Rails5.0:SHOULDΈ͍ͨͳ...
Αʔ͠ɺ্͛Δ͔ʔ
Rails 5.0
खॱ • Rails 5.0ʹ্͛Δ 1. ϦάϨογϣϯςετͰΤϥʔग़Δ 2. Issueʹ͢Δ 3. मਖ਼͢Δͷϧʔϓ
• ࣄલ༻ҙͨ͠IssueফԽ͍ͯ͘͠
͜͜Ͱ͔ͬͨ͜ͱ...
ϦϦʔεϊʔτʹࡌͬͯͳ͍ มߋͰͨ͘͞ΜΤϥʔ͕ग़ͨ
ͬͱফԽͨ͠ʂ ͱࢥ͍͖
લͰൃੜ
Rails 4.2Ͱ࡞ͨ͠ δϣϒΛ͑ͳ͍
σγϦΞϥΠζͰ͖ͳ͍ • Rails 4.2ͷ࣌ʹδϣϒΛ ϚʔγϟϧγϦΞϥΠζ͍ͯͨ͠ • Rails 4.2ʹ͋ͬͯɺ5.0ʹͳ͍ΫϥεΛؚΊͯγϦ ΞϥΠζ͍ͯͨ͠ͷͰɺσγϦΞϥΠζ͢Δࡍʹɺ ఆΤϥʔ͕ൃੜ
• ActiveRecord::ConnectionAdapters::AbstractMysql Adapter::MysqlDateTimeͱ͔...
ղܾࡦ • δϣϒ • Rails 4.2ʹ͋ͬͯɺRails 5.0ʹͳ͍Ϋϥε ɺμϛʔͰఆٛͨ͠ • 4.2ͷδϣϒΛফԽͨ͠Βɺআ
Rails 4.2͔Βෳ
͍ͭʹϦϦʔεʂʂ
ޭʂ ͔͠ϊʔΤϥʔͩͱ...!?
ଓ͍ͯ5.1ʂ
Rails 5.1
5.1Ͱগۤ͠࿑ͨ͠Օॴ
uniq→distinctมߋ • ActiveRecordͱ ActiveRecord::ActiveRecord_Relationͷ uniqϝιου͕distinctϝιουʹมߋ͞Εͨ
uniq→distinctมߋ • ActiveRecord::ActiveRecord_Relation Array ͷuniqϝιουΛҕৡ͍ͯ͠ΔͷͰɺ uniq→distinctʹ͠Εͯɺ NoMethodError͕ग़ͳ͍... • ·ͨɺArrayͰҾ͖ଓ͖ɺuniqΛ͏ͷͰɺ શͯdistinctʹ͍͍ͤΘ͚Ͱͳ͍
Rails 5.2
image_tagͷมߋ͕...
image_tag • CarrierWaveͷUploaderͬͯ͋Δ͡Όͳ͍Ͱ ͔͢
image_tag • ࠓ·Ͱɺ image_tag(@image_uploader_object)Έ͍ͨ ʹ ΠϝʔδΞοϓϩʔυΦϒδΣΫτΛೖΕͯ ͳΜ͔Μͯ͘͠Ε͕ͨɺͯ͘͠Εͳ͘ͳͬ ͨ
image_tag • ۩ମతʹɺ • Can't resolve image into URL: undefined
method `to_model' for #<MyUploader:xxxxxxxxxx> Did you mean? to_xml • ͳΔΤϥʔ͕ग़·͢
image_tagղܾࡦ • ୈҰҾʹɺURLͷจࣈྻΛͤͱͷ͜ ͱͩͬͨͷͰ • image_tag(@image_uploader_object) ↓ image_tag(@image_uploader_object.url) • ʹॻ͖͑ͨ
ͪͳΈʹ • mount_uploader :url, MyUploaderΈ͍ͨʹॻ ͍͍ͯΔͱ... • image_tag(@profile_image.url.url) Έ͍ͨʹ ͳΓ·͢
ŘşũūŘ
·ͱΊ
ྑ͔ͬͨͱ͜Ζ • ϢχοτςετͷΧόϨοδΛ80%ॻ͍ͨ • ઈରʹΤϥʔग़ͨ͘͠ͳ͍Օॴɺ ಈ࡞֬ೝ߲ॻΛ࡞ͯ͠ɺखಈͰͷ֬ೝΛͨ͜͠ͱ • ݹ͍ڥ(4.2)→৽͍͠ڥ(5.0ͳͲ)ͷ֬ೝΛͨ͜͠ ͱ •
ηογϣϯɾδϣϒͷෆ۩߹Λݟ͚ͭΒΕΔ
ఆ֎ͩͬͨՕॴ • ϦϦʔεϊʔτΛ֬ೝͨ͠Βɺेͩͱࢥ͍ ࠐΜͰ͍͕ͨɺ ϦϦʔεϊʔτʹͳ͍มߋͳͲΤϥʔ͕ग़ ͍ͯͨ(શମͷ30~40%͙Β͍) • ϦάϨογϣϯςετΛॻ͍ͯɺ্͛ͯɺΤ ϥʔΛ௵͍ͯ͘͠ํ͕ϝΠϯʹͳΓͦ͏
None
RailsΞοϓσʔτ ϊʔΤϥʔͰͨ͠ ☀