rails解説セミナー 第13章
TRANSCRIPT
![Page 1: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/1.jpg)
13
#Rails
http://railstutorial.jp/
Rails
by YassLab
![Page 2: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/2.jpg)
![Page 3: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/3.jpg)
Slideshare
http://www.slideshare.net/yasulab/presentations
![Page 4: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/4.jpg)
Cloud9
1. 2. URL 3.
![Page 7: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/7.jpg)
URL “Collaborate” → “Group Chat”
![Page 8: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/8.jpg)
! :)
![Page 9: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/9.jpg)
Ready?
![Page 10: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/10.jpg)
!
![Page 11: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/11.jpg)
13
#Rails
http://railstutorial.jp/
Rails
by YassLab
![Page 12: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/12.jpg)
DB
📨
✅ URL
❌ (NG )
⭕ (OK )
![Page 13: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/13.jpg)
📝 email !
DB
📨
✅ URL
❌ (NG )
⭕(OK )
edit form
![Page 14: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/14.jpg)
: assigns
@user
users_signup_test.rb
users_controller.rb
![Page 15: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/15.jpg)
✅ 11 📨 🔒
•
✅ 12 📨 🔓
•
13 📮 🐤
•
14 👤 👤
•
![Page 16: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/16.jpg)
1. Micropost (cf. 2, 4, 6 ) User Micropost − User has_many Microposts − Micropost belongs_to User
2. Micropost (cf. 7, 8, 9 )
3. Micropost (cf. 10 )
4. Micropost
![Page 17: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/17.jpg)
13
Micropost
http://railstutorial.jp/
Rails
by YassLab
![Page 18: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/18.jpg)
content Text :
- DB .
- ( ) .
Micropost
![Page 19: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/19.jpg)
Micropost
![Page 20: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/20.jpg)
Micropost
![Page 21: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/21.jpg)
• Micropost $ rails generate model Micropost content:text user:references
Micropost
👆user_id:integer
👇
![Page 22: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/22.jpg)
• Micropost $ rails generate model Micropost content:text user:references
Micropost
👇
![Page 23: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/23.jpg)
•
• (Association)
Micropost
Micropost.find_by(user_id: user.id) user.microposts
Micropost.new(user_id: user.id) user.microposts.build
Micropost.create(user_id: user.id) user.microposts.create
Micropost.find_by(user_id: user.id, …) user.microposts.find_by(…)
: user.microposts.build(content: ‘1st post!’)
![Page 24: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/24.jpg)
• Micropost default_scope -> { order(created_at: :desc) }👆 Micropost.first
• -> { … } Ruby Proc : p = -> { print ‘foo’ } ; p.call => ‘foo’
• User Micropost has_many :microposts, dependent: :destroy👆 User
Micropost
![Page 25: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/25.jpg)
13
http://railstutorial.jp/
Rails
by YassLab
![Page 26: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/26.jpg)
Micropost
🤔
📝
![Page 27: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/27.jpg)
• 🚃 💨 Microposts
• 🔧 ( ) Partial
• 🐤 Users show
• 🌱 seeds
• 🎨 CSS
• ✅
• 🔍
Micropost
![Page 28: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/28.jpg)
13
http://railstutorial.jp/
Rails
by YassLab
![Page 29: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/29.jpg)
• / URL
• Microposts
• logged_in_user
• Microposts
Micropost (TDD )
![Page 30: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/30.jpg)
🔧 Home
🔧 error_messages object
✅ Home /
Micropost
👈 shared/user_info
👈 shared/micropost_form
![Page 31: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/31.jpg)
🔧
👤 where
👥
( )
![Page 32: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/32.jpg)
🔧 _micropost
🔧 [delete]
🔧 [delete] DELETE destroy
![Page 33: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/33.jpg)
13
http://railstutorial.jp/
Rails
by YassLab
![Page 34: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/34.jpg)
Micropost
[Upload image]
![Page 35: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/35.jpg)
Micropost • CarrierWave
$ rails generate uploader Picture $ rails generate migration \ add_picture_to_microposts picture:string
• MiniMagick $ sudo apt-get update $ sudo apt-get install imagemagick --fix-missing
• Fog ( ) Amazon S3 Bucket
![Page 36: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/36.jpg)
![Page 37: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/37.jpg)
1. Micropost (cf. 2, 4, 6 ) User Micropost − User has_many Microposts − Micropost belongs_to User
2. Micropost (cf. 7, 8, 9 )
3. Micropost (cf. 10 )
4. Micropost
![Page 38: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/38.jpg)
![Page 42: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/42.jpg)
![Page 43: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/43.jpg)
( ) !
![Page 45: Rails解説セミナー 第13章](https://reader033.vdocuments.net/reader033/viewer/2022051123/58eca07a1a28abb30b8b460b/html5/thumbnails/45.jpg)
13
#Rails
http://railstutorial.jp/
Rails
by YassLab