เกิดอยากจะเขียน API ง่ายๆ ด้วย Ruby on Rails
เกิดอยากจะเขียน API ง่ายๆ ด้วย Ruby on Rails
เขียนง่าย เขียนสนุก เขียนโปรแกรมไม่ควรจะยากตั้งแต่เริ่มต้น หากเริ่มแล้วยาก ใครจะอยากทำต่อ มาเขียน Ruby on Rails กันเถอะ
เกี่ยวกับหนังสือ
ซื้อหนังสือฉบับสั่งพิมพ์ผ่าน shopee ง่ายๆได้เลยคับ https://links.geekstart.io/l/ror-book
ซื้อ ebook ผ่านการโอนเงินง่ายๆ แอดไลน์ @geekstart ได้เลยครับ
Ruby on Rails
Web framework ที่สร้าง successful startup มามากมาย และ ถูกใช้งานบน Platform ใหญ่ๆเช่น
GitHub, dev.to, Basecamp, HEY, Shopify, Airbnb, Twitch, SoundCloud, Hulu, Zendesk, Square, Cookpad
Web framework ที่ใช้งานง่ายมาก เขียนง่าย เข้าใจง่าย
เหมาะสำหรับทำ API สำหรับ Web Application หลากหลายรูปแบบ เหมาะกับ ธุรกิจเกือบทุกชนิด
Technical Debt น้อย อัพเกรดง่าย Convention / Standard ชัดเจน
ทำให้การเขียนโปรแกรมเป็นเรื่องสนุก มากกว่าการแก้ปัญหา
หนังสือเล่มนี้ จะทำให้คุณสร้าง API ได้ยันคุณทำ Project ของคุณเสร็จได้เลย
รวบรวมจากประสบการณ์ใช้ Ruby on Rails มามากกว่า 9 ปี ไม่ว่าจะเป็นงานใหญ่ งานเล็ก รับได้หมด
การแปล
สารบัญ
- 1 Introduction
-
2 เตรียมเครื่อง
- 2.1 RVM
- 2.2 Ruby
- 2.3 NVM (optional)
- 2.4 NodeJS (optional)
-
2.5 Text Editor
- Atom
- Sublime
- VSCode
- 2.6 Postman / Hoppscotch
- 3 Creating Ruby on Rails Project
-
4 Folder structure
- 4.1 .ruby-version
- 4.2 .ruby-gemset (new)
- 4.3 Gemfile & Gemfile.lock
-
4.4 config folder
- config/database.yml
- config/Environments files
-
4.5 app folder
- app/controllers/application_controller.rb
- app/models/application_record.rb
- 4.6 อื่นๆ
-
5 Ruby
- 5.1 Numbers
- 5.2 BigDecimal (Rails only)
- 5.3 Strings
- 5.4 Comment
- 5.5 Print
- 5.6 Object Methods
- 5.7 Array
- 5.8 Hash
- 5.9 Blocks
- 5.10 Modify Built-in Class
-
6 Controllers for Beginner
- 6.1 HTTP Request / Actions
-
6.2 Static GET API
- Cross origin request (rack-cors)
- 6.3 POST PUT DELETE for Static
-
7 Models and Migration
- 7.1 Creating Model
- 7.2 Migrating Database
-
8 Rails Console
- 8.1 The power of Rails console
- 8.2 Rails powered by Ruby is fun
-
9 CRUD API ใช้งานได้จริง
- 9.1 Review บทก่อนหน้า
- 9.2 RESTful APIs
- 9.3 API GET users
- 9.4 API GET users/:id
- 9.5 API POST /users create
- 9.6 API PATCH /users/:id update
- 9.7 API DELETE /users/:id destroy
- 9.8 Resourceful routes
- 9.9 สรุปบท CRUD API
-
10 The Power of Scaffolding
- 10.1 rails g scaffold
- 10.2 Controller from scaffold
-
11 Model Relationship
- 11.1 ER Diagram
- 11.2 Starting small project
- 11.3 Scaffold APIs
- 11.4 The Missing APIs
- 11.5 Model’s Relationship
- 11.6 Testing Model’s Relationship
- 11.7 Add missing API
- 11.8 อื่นๆเกี่ยวกับ API
-
12 Sending Emails
- 12.1 Action Mailer Basic
- 12.2 Email Template Layouts
- 12.3 Test sending email
-
13 Errors Rescue
- 13.1 Ruby Rescue
-
13.2 (API) ApplicationController Rescue
- Error Class (StandardError)
- rescue_from
- 13.3 Example Classes to rescue
-
14 Authenticating API with JWT
- 14.1 Devise Gem
- 14.2 JWT for User model
- 14.3 Session Controller
- 14.4 Sign up API
- 14.5 Sign in API
- 14.6 User profile API (from JWT)
- 14.7 Sign out API
-
15 Model Validation
- 15.1 Simple Presence Validation
- 15.2 Validating Inclusion
- 15.3 Validating Length
- 15.4 Validate Numbers
- 15.5 Custom Validation
-
16 Active Record Query Interfaces
- 16.1 Date query
- 16.2 Where NOT
- 16.3 Scope
- 16.4 Scope with function
- 16.5 Ordering
- 16.6 Relationship Ordering
- 16.7 Readonly Objects
- 16.8 Querying Relationship
-
16.9 Eager Loading
- n+1 query
- 16.10 Selecting Fields to Query
-
16.11 Calculations
- .count
- .sum
- .average
- .minimum
- .maximum
- Others
-
17 Caching with Rails
- 17.1 Installing Redis
- 17.2 การ Config Cache Store on Rails
- 17.3 Simple Key Caching
- 17.4 Model Caching
-
18 Upload File / Image
- 18.1 Setup ActiveStorage
- 18.2 Adding ActiveStorage to Model
- 18.3 Adding Upload Image API
-
18.4 Storage Location Config
- Disk Storage
- Amazon S3 Storage
- Google Cloud Storage
- AzureStorage
- ข้อควรระวัง
-
19 Managing Status with State Machine
- 19.1 Act as state machine (aasm)
- 19.2 AASM Events
- 19.3 AASM Callbacks
-
20 Unit tests
- 20.1 Using rails test
- 20.2 Test Driven Development (TDD)
-
20.3 Unit test with fixtures and
setup
feature
-
21 Deploying Rails
- 21.1 Requirements
- 21.2 Setting New User in ubuntu
- 21.3 Setting ubuntu for rails
- 21.4 nginx passenger
- 21.5 Cloning Project
- 21.6 Config Nginx Passenger
- 22 สรุป
การรับประกันความพึงพอใจ 100% ภายใน 60 วันของ Leanpub
ภายใน 60 วันหลังการซื้อ คุณสามารถรับเงินคืน 100% สำหรับการซื้อใดๆ บน Leanpub ด้วยการคลิกเพียง สองครั้ง
แม้ว่าในทางเทคนิคแล้ว นี่จะเป็นความเสี่ยงสำหรับเรา เพราะคุณจะได้ไฟล์หนังสือหรือคอร์สไปแล้วก็ตาม แต่เรามั่นใจในผลิตภัณฑ์และบริการของเรา รวมถึงผู้เขียนและผู้อ่านของเรามาก จนเรายินดีที่จะเสนอการคืนเงินเต็มจำนวนสำหรับทุกสิ่งที่เราขาย
คุณจะรู้ว่าสิ่งใดดีได้ก็ต่อเมื่อได้ลองใช้ และด้วยการรับประกันคืนเงิน 100% ของเรา จึงไม่มีความเสี่ยงใดๆ ในการทดลอง!
ดังนั้น ไม่มีเหตุผลที่จะไม่คลิกปุ่มเพิ่มลงตะกร้าใช่ไหมล่ะ?
ดูเงื่อนไขฉบับเต็ม...
รับ $8 จากการซื้อ $10 และ $16 จากการซื้อ $20
เราจ่ายค่าลิขสิทธิ์ 80%สำหรับการซื้อที่มีมูลค่า$7.99 หรือมากกว่า และค่าลิขสิทธิ์ 80% หักค่าธรรมเนียมคงที่ 50 เซ็นต์สำหรับการซื้อระหว่าง$0.99 ถึง $7.98 คุณจะได้รับ $8 จากการขาย $10 และ $16 จากการขาย $20 ดังนั้น หากเราขายหนังสือของคุณ 5000 เล่มในราคา $20 โดยไม่มีการคืนเงิน คุณจะได้รับ$80,000
(ใช่ นักเขียนบางท่านได้รับมากกว่านั้นบน Leanpub แล้ว)
จริงๆ แล้ว นักเขียนได้รับรายได้มากกว่า $14 ล้านจากการเขียน ตีพิมพ์ และขายบน Leanpub
เรียนรู้เพิ่มเติมเกี่ยวกับการเขียนบน Leanpub
อัพเดทฟรี ไม่มี DRM
เมื่อคุณซื้อหนังสือ Leanpub คุณจะได้รับการอัพเดทฟรีตราบใดที่ผู้เขียนยังอัพเดทหนังสือ! ผู้เขียนหลายท่านใช้ Leanpub ในการเผยแพร่หนังสือระหว่างที่กำลังเขียน ผู้อ่านทุกคนจะได้รับการอัพเดทฟรี ไม่ว่าจะซื้อเมื่อไหร่หรือจ่ายเท่าไร (รวมถึงได้มาฟรี)
หนังสือ Leanpub ส่วนใหญ่มีให้อ่านในรูปแบบ PDF (สำหรับคอมพิวเตอร์) และ EPUB (สำหรับโทรศัพท์ แท็บเล็ต และ Kindle) รูปแบบที่มีให้บริการจะแสดงที่มุมบนขวาของหน้านี้
สุดท้ายนี้ หนังสือ Leanpub ไม่มีระบบป้องกันการคัดลอก DRM ที่ยุ่งยาก คุณจึงสามารถอ่านได้ง่ายๆ บนอุปกรณ์ที่รองรับทุกเครื่อง
เรียนรู้เพิ่มเติมเกี่ยวกับรูปแบบอีบุ๊กของ Leanpub และแหล่งที่สามารถอ่านได้