Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Ruby on Rails Kickstart 101 & 102
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Heng-Yi Wu
October 01, 2015
Programming
53
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ruby on Rails Kickstart 101 & 102
Ruby on Rails Kickstart 101 & 102.
Presentation file for NCCU Trend Tech Club.
Heng-Yi Wu
October 01, 2015
More Decks by Heng-Yi Wu
See All by Heng-Yi Wu
自動化你的過勞生活 - Probot
henry40408
0
120
Ruby on Rails Kickstart 103 & 104
henry40408
0
57
Other Decks in Programming
See All in Programming
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
32k
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
170
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
AWSに止められる覚悟してますか?
morizo_1984
2
540
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.6k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
280
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1.1k
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
520
The Rails Doctrine Decade
koic
2
590
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
480
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Scaling GitHub
holman
464
140k
Speed Design
sergeychernyshev
33
2.2k
Thoughts on Productivity
jonyablonski
76
5.4k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
630
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
エンジニアに許された特別な時間の終わり
watany
109
250k
ラッコキーワード サービス紹介資料
rakko
1
5.4M
Are puppies a ranking factor?
jonoalderson
2
4.1k
Transcript
Ruby on Rails #101 伛猋絑ह
౯襑ᥝՋ讕牫 1. 螞ਝ POSIX 秂伛ጱ֢禂羬翄 (ֺই Mac OS X
Linux) 2. HTML, CSS/SASS, 膏 JavaScript/CoffeeScript ጱፘ橕Ꭳ蘷
Windows牧笔
Cloud9 娄Ӥ IDE 䒻眅薹究Ӟ獥㺔氂牧ᴻԧ翕᪠䥁娄...
虏౯㮉樄তމ 1. 戢㲘Ӟ㮆 GitHub ጱ癱蒈 2. 犥 GitHub 癱蒈ጭ獈 Cloud9
• ୌ捍ֵአ Google Chrome • 櫒簁౯፥ጱ፥ጱ盄懵玬 Google Chrome 牧֕ Cloud9 磧蜱 ጱๅ碝盅胼䄪ਠ碉咳䠁ۑ胼ጱ犲Ԓݝ磪 Google Chrome 3. ୌ缏Ӟ㮆 Private workspace 牧觊ࣳ螡 Custom
౯䨝䋊کՋ讕牫 • ୌ缏Ӟ㮆 Ruby on Rails 䌕礯
suspenders thoughtbot 禛虄ڊߝ
ਞ蕕 suspenders 1. ਞ蕕 Ruby 2.2.3 (Ruby 磧碝粚) 2. ਞ蕕ᥝጱፘ狅ॺկ
3. ਞ蕕 suspenders
ਞ蕕 suspenders (媲) # 傶ԧ Capybara WebKit ਞ蕕ᥝጱፘ狅ॺկ # 犋䁆ᤈ蝡Ӟྍࣁਞ蕕
suspenders ጱ碻狡䨝ڊ㺔氂 $ sudo apt-get install qt5-default libqt5webkit5-dev # ਞ蕕ፓ獮 suspenders ᥝ穩ጱ磧犵 Ruby 粚 $ rvm install 2.2.3 # ޞ藗羬翄ֵአ㴄㴄ਞ蕕ጱ Ruby 粚ᘒ犋ฎ羬翄獉ୌጱ Ruby 粚 $ rvm use --default 2.2.3 # ਞ蕕 suspenders $ gem install suspenders
碝ी Ruby on Rails 䌕礯 1. ֵአ suspenders 碝ी䌕礯 2.
犥 SQLite3 玲դ PostgreSQL • Cloud9 Ӥ犋অਞ蕕 PostgreSQL 3. 犥 .sample.env 傶萠ୌ缏絑ह虋碍戔ਧ䲆礯 .env
ֵአ suspenders 碝ी䌕礯 $ suspenders demo --database sqlite3 • 疥
demo 硬౮֦ጱ䌕礯ݷ圸 • 蝡㮆瞲犤䛑扗䨝०硻牧ࢩ傶螭䷱磪ਞ蕕ಅ磪ᥝጱፘ狅ॺկ
犥 SQLite3 玲դ PostgreSQL group :development do ... gem "sqlite3"
... end 1. 樄 Gemfile 2. 疥 sqlite3 碝ीک :development ᗭ奲愊ᶎ 3. cd ک䌕礯虻碘䄸 4. 䁆ᤈ bundle 瞲犤
絑ह虋碍牫 • ౯㮉磪碻狡䨝疩獈Ӟ犚ᒫӣො๐率牧ֺই AWS • ᘒ犢㮉蝢ଉ䨝׀Ӟ奲 application ID 膏 secret
key 妔౯㮉Ԁ 蝫犢㮉ጱ๐率 (觊犲癱蒈/ੂ嘨ጱ禊盢) • ֕蝡奲䚣挨犋胼硯ࣁ纷ୗ嘨愊牧ࢩ傶蝡ฎӞկ覍ଉܧ檺ጱԪ • ಅ犥౯㮉蝡犚硵眤虻碘硯ࣁ絑ह虋碍愊牧膏纷ୗ嘨玟獤樄㬵
GitHub 硌獅膊恝疏樄咳Ո㹓ᰂ槄क़丽 10 獤楮牧AWS 癱蒈泷Ӥ ᤩ緱አ 6500 聅ز牦 http://www.ithome.com.tw/news/98497
絑ह虋碍戔ਧ䲆萠 .sample.env # http://ddollar.github.com/foreman/ ASSET_HOST=localhost:3000 APPLICATION_HOST=localhost:3000 RACK_ENV=development SECRET_KEY_BASE=development_secret EXECJS_RUNTIME=Node
絑ह虋碍戔ਧ䲆萠 .sample.env (媲) • ASSET_HOST: 硯瑽粙牏 CSS 䲆礯牏 JavaScript 䲆礯ጱԆ秚֖
ᗝ牐ইຎ翕ᒊ磪ֵአ CDN (Content Distribution Network) 磪 ݢ胼䨝ฎ膏䛑አ纷ୗ犋ݶጱԆ秚牐 • APPLICATION_HOST: 䛑አ纷ୗጱԆ秚֖࣎牐 • RAKE_ENV: Ruby on Rails አ㬵玟獤樄咳 development 牏介手 testing 膏ྋୗӤ娄 production ጱ絑ह虋碍牐妃䌘犋胼ࣁӤ 娄絑हӾֵአ樄咳秇ୗ牐
絑ह虋碍戔ਧ䲆萠 .sample.env (媲) • SECRET_KEY_BASE: Ruby on Rails አ㬵䒻ੂ嘨ےੂጱ烡૬牧䔶 篇ୌ捍蝚螂
rake secret 瞲犤叨ኞ • EXECJS_RUNTIME: አ㬵䁆ᤈ JavaScript 脻ጱ䁆ᤈ砻牧ֺই SASS (翥捌౮ CSS) CoffeeScript (翥捌౮ JavaScript) ጱ翥 捌纷ୗ
犥 .sample.env 傶萠ୌ缏絑ह虋碍戔 ਧ䲆礯 .env # 蕦蕣萠䲆礯 $ cp .sample.env
.env # 叨ኞ̿烡૬̀㪔̿烡૬̀蕦蕣ӥ㬵 $ rake secret # 樄 .env 㪔ࣁ SECRET_KEY_BASE 盅ᶎ揳Ӥ̿烡૬̀ # 虏 SECRET_KEY_BASE=development_secret # 虋౮ SECRET_KEY_BASE=XXXXXX ጱ䰬ৼ
珸㵕 Ruby on Rails ֑๐瑊 $ rails server -b $IP
-p $PORT • server: 䁆ᤈ Ruby on Rails ֑๐瑊 • -b: 瞲ਧ IP ֖࣎ • $IP: ℂ絑ह虋碍玲 IP ֖࣎ • -p: 瞲ਧ蝫矑ओ • $PORT: ℂ絑ह虋碍玲蝫矑ओ蒈
य़ۑޞ౮ ইຎ֦፡ک蝡㮆向ᶎ牧դ蔭֦౮ۑԧ
One more thing 螭磪ӞկԪ
ਞ蕕 simple_form Forms made easy for Rails! It's tied to
a simple DSL, with no opinion on markup rails generate simple_form:install --bootstrap • generate 叨ኞ simple_form gem ጱ戔ਧ䲆 • --bootstrap 膏 Twitter Bootstrap 碉ݳ
End of Ruby on Rails #101
Ruby on Rails #102 ୌ缏覌眲殷ᶎ
High voltage Linkin park
high_voltage gem Easily include static pages in your Rails app.
(݈ฎ) ኧ thoughtbot 禛虄ڊߝ
傶Ջ讕ᥝ脒慁ৼ硯疵牫 • Ruby on Rails ฎӞ㮆朼䌘㵕眲獉樄咳ጱ礍 • 櫒簁౯㮉ݢ犥覌眲կ硯ࣁ public/ ፓ袅愊牧֕磪碻狡֦䨝
襑ᥝࣁ HTML կ愊્獈 Ruby 纷ୗ嘨 • 犥 high_voltage gem 薹究
虏౯㮉樄তމ 1. ਞ蕕 high_voltage 2. ୌ缏Ӟ㮆覌眲殷ᶎ 3. 戔ਧ䛑አ纷ୗጱ᪠ኧ
ਞ蕕 high_voltage 1. ౯㮉犋ݚक़ਞ蕕 high_voltage gem 牧ࢩ傶 suspenders ૪ 妿䒻౯㮉۱ࣁ䌕礯愊ԧ
2. ᮎ疰ฎ傶Ջ讕౯㮉ᥝֵአ suspenders ୌ缏䌕礯ጱܻࢩ
ୌ缏Ӟ㮆覌眲殷ᶎ 1. ࣁ app/views/pages ፓ袅ӥ碝ीӞ㮆䲆礯牧褰玲Ӟ㮆অ懿 ጱݷਁ牐౯䲆礯玲ݷ home.html.erb 2. ࣁ䲆礯愊ᶎ䌃ӥ犨֦֜మᥝ䌃ጱ獉牧ӥො纷ୗ嘨ฎӞྦྷֺৼ 3.
ਂ䲆 <h1>Hello, Ruby on Rails!</h1> <p>Current time: <%= DateTime.now %></p>
戔ਧ䛑አ纷ୗጱ᪠ኧ 1. 樄 config/routes.rb 䲆礯 2. ࣁ䲆礯愊碝ीӞྦྷ碝ጱ᪠䕩牧 id ฎ֦ᛔ૩傶䲆礯玲ጱݷਁ 3.
ਂ䲆 Rails.application.routes.draw do root "high_voltage/pages#show", id: "home" end
ᮎӞᤈฎՋ讕牫 root "high_voltage/pages#show", id: "home" 1. root դ蔭౯㮉మ疥覌眲殷ᶎ膏᪠䕩 "/" 翉ࣁӞ蚏
2. high_voltage/pages#show դ蔭蝡㮆᪠䕩ᥝ蚤ᮎ㮆 controller/action 翉ࣁӞ蚏牧蝡㮆ਁԀฎ磪粬ਧ໒ୗጱ 3. id: "home" ฎ౯㮉ᥝ㯽獈 action ጱ㷢碍
̿粬ਧ໒ୗ̀ high_voltage/pages#show [package_name]/[controller_name]#[action_name] show ฎ౯㮉ᥝ蚤᪠䕩翉ࣁӞ蚏ጱ action牧ᘒ蝡㮆 action 痀ෝ㬵 ᛔ high_voltage
gem ጱ pages controller
᯿碝珸㵕 Ruby on Rails ֑๐瑊 Ctrl+C 簁盅䁆ᤈ rails server -b
$IP -p $PORT 瞲犤
㺔氂矎ᴻ Sass::SyntaxError in HighVoltage::Pages#show File to import not found or
unreadable: refills/flashes. 1. https://github.com/thoughtbot/suspenders/issues/568 2. ࣁ䲆礯 app/assets/stylesheets/application.scss 戢薹 ധ @import "refills/flashes"; 3. ᯿碝珸㵕֑๐瑊
奾ຎ
手茐ୌ缏ݚक़Ӟ㮆覌眲䲆礯 • 蝚螂᪠䕩 pages/:page_name 倵薩覌眲䲆礯 • 疥 :page_name 矦౮֦ጱ覌眲䲆礯ݷ圸牧㪔Ӭ݄ധ ".html.erb"
End of Ruby on Rails #102
ࢧ疑֢禂 1. ℂ毣蝚螂 suspenders ୌ缏Ӟ㮆 Ruby on Rails 䌕礯 2.
蝚螂 high_voltage gem ୌ缏ӣ㮆覌眲䲆礯 3. ے獤֢禂: 傶ӣ㮆覌眲䲆礯ୌ缏瞲ݻஂ種ጱ᩻蝫奾