issues
search
open-learn
/
rails
Hướng dẫn học Rails theo sách "Ruby on Rails Tutorial"
0
stars
1
forks
source link
Learn Rails Tutorial (khiemht)
#2
Open
vochicong
opened
7 years ago
vochicong
commented
7 years ago
Rails Tutorial Checklist
Content of
Ruby on Rails Tutorial by Michael Hartl
Chapter 1 From zero to deploy
[ ] 1.1 Introduction
[ ] 1.1.1 Prerequisites
[ ] 1.1.2 Conventions used in this book
[ ] 1.2 Up and running
[ ] 1.2.1 Development environment
[ ] 1.2.2 Installing Rails
[ ] 1.3 The first application
[ ] 1.3.1 Bundler
[ ] 1.3.2 rails server
[ ] 1.3.3 Model-View-Controller (MVC)
[ ] 1.3.4 Hello, world!
[ ] 1.4 Version control with Git
[ ] 1.4.1 Installation and setup
[ ] 1.4.2 What good does Git do you?
[ ] 1.4.3 Bitbucket
[ ] 1.4.4 Branch, edit, commit, merge
[ ] 1.5 Deploying
[ ] 1.5.1 Heroku setup
[ ] 1.5.2 Heroku deployment, step one
[ ] 1.5.3 Heroku deployment, step two
[ ] 1.5.4 Heroku commands
[ ] 1.6 Conclusion
[ ] 1.6.1 What we learned in this chapter
Chapter 2 A toy app
[ ] 2.1 Planning the application
[ ] 2.1.1 A toy model for users
[ ] 2.1.2 A toy model for microposts
[ ] 2.2 The Users resource
[ ] 2.2.1 A user tour
[ ] 2.2.2 MVC in action
[ ] 2.2.3 Weaknesses of this Users resource
[ ] 2.3 The Microposts resource
[ ] 2.3.1 A micropost microtour
[ ] 2.3.2 Putting the micro in microposts
[ ] 2.3.3 A user has_many microposts
[ ] 2.3.4 Inheritance hierarchies
[ ] 2.3.5 Deploying the toy app
[ ] 2.4 Conclusion
[ ] 2.4.1 What we learned in this chapter
Chapter 3 Mostly static pages
[ ] 3.1 Sample app setup
[ ] 3.2 Static pages
[ ] 3.2.1 Generated static pages
[ ] 3.2.2 Custom static pages
[ ] 3.3 Getting started with testing
[ ] 3.3.1 Our first test
[ ] 3.3.2 Red
[ ] 3.3.3 Green
[ ] 3.3.4 Refactor
[ ] 3.4 Slightly dynamic pages
[ ] 3.4.1 Testing titles (Red)
[ ] 3.4.2 Adding page titles (Green)
[ ] 3.4.3 Layouts and embedded Ruby (Refactor)
[ ] 3.4.4 Setting the root route
[ ] 3.5 Conclusion
[ ] 3.5.1 What we learned in this chapter
[ ] 3.6 Advanced testing setup
[ ] 3.6.1 minitest reporters
[ ] 3.6.2 Automated tests with Guard
Chapter 4 Rails-flavored Ruby
[ ] 4.1 Motivation
[ ] 4.1.1 Built-in helpers
[ ] 4.1.2 Custom helpers
[ ] 4.2 Strings and methods
[ ] 4.2.1 Comments
[ ] 4.2.2 Strings
[ ] 4.2.3 Objects and message passing
[ ] 4.2.4 Method definitions
[ ] 4.2.5 Back to the title helper
[ ] 4.3 Other data structures
[ ] 4.3.1 Arrays and ranges
[ ] 4.3.2 Blocks
[ ] 4.3.3 Hashes and symbols
[ ] 4.3.4 CSS revisited
[ ] 4.4 Ruby classes
[ ] 4.4.1 Constructors
[ ] 4.4.2 Class inheritance
[ ] 4.4.3 Modifying built-in classes
[ ] 4.4.4 A controller class
[ ] 4.4.5 A user class
[ ] 4.5 Conclusion
[ ] 4.5.1 What we learned in this chapter
Chapter 5 Filling in the layout
[ ] 5.1 Adding some structure
[ ] 5.1.1 Site navigation
[ ] 5.1.2 Bootstrap and custom CSS
[ ] 5.1.3 Partials
[ ] 5.2 Sass and the asset pipeline
[ ] 5.2.1 The asset pipeline
[ ] 5.2.2 Syntactically awesome stylesheets
[ ] 5.3 Layout links
[ ] 5.3.1 Contact page
[ ] 5.3.2 Rails routes
[ ] 5.3.3 Using named routes
[ ] 5.3.4 Layout link tests
[ ] 5.4 User signup: A first step
[ ] 5.4.1 Users controller
[ ] 5.4.2 Signup URL
[ ] 5.5 Conclusion
[ ] 5.5.1 What we learned in this chapter
Chapter 6 Modeling users
[ ] 6.1 User model
[ ] 6.1.1 Database migrations
[ ] 6.1.2 The model file
[ ] 6.1.3 Creating user objects
[ ] 6.1.4 Finding user objects
[ ] 6.1.5 Updating user objects
[ ] 6.2 User validations
[ ] 6.2.1 A validity test
[ ] 6.2.2 Validating presence
[ ] 6.2.3 Length validation
[ ] 6.2.4 Format validation
[ ] 6.2.5 Uniqueness validation
[ ] 6.3 Adding a secure password
[ ] 6.3.1 A hashed password
[ ] 6.3.2 User has secure password
[ ] 6.3.3 Minimum password standards
[ ] 6.3.4 Creating and authenticating a user
[ ] 6.4 Conclusion
[ ] 6.4.1 What we learned in this chapter
Chapter 7 Sign up
[ ] 7.1 Showing users
[ ] 7.1.1 Debug and Rails environments
[ ] 7.1.2 A Users resource
[ ] 7.1.3 Debugger
[ ] 7.1.4 A Gravatar image and a sidebar
[ ] 7.2 Signup form
[ ] 7.2.1 Using form_for
[ ] 7.2.2 Signup form HTML
[ ] 7.3 Unsuccessful signups
[ ] 7.3.1 A working form
[ ] 7.3.2 Strong parameters
[ ] 7.3.3 Signup error messages
[ ] 7.3.4 A test for invalid submission
[ ] 7.4 Successful signups
[ ] 7.4.1 The finished signup form
[ ] 7.4.2 The flash
[ ] 7.4.3 The first signup
[ ] 7.4.4 A test for valid submission
[ ] 7.5 Professional-grade deployment
[ ] 7.5.1 SSL in production
[ ] 7.5.2 Production webserver
[ ] 7.5.3 Production deployment
[ ] 7.6 Conclusion
[ ] 7.6.1 What we learned in this chapter
Chapter 8 Basic login
[ ] 8.1 Sessions
[ ] 8.1.1 Sessions controller
[ ] 8.1.2 Login form
[ ] 8.1.3 Finding and authenticating a user
[ ] 8.1.4 Rendering with a flash message
[ ] 8.1.5 A flash test
[ ] 8.2 Logging in
[ ] 8.2.1 The log_in method
[ ] 8.2.2 Current user
[ ] 8.2.3 Changing the layout links
[ ] 8.2.4 Testing layout changes
[ ] 8.2.5 Login upon signup
[ ] 8.3 Logging out
[ ] 8.4 Conclusion
[ ] 8.4.1 What we learned in this chapter
Chapter 9 Advanced login
[ ] 9.1 Remember me
[ ] 9.1.1 Remember token and digest
[ ] 9.1.2 Login with remembering
[ ] 9.1.3 Forgetting users
[ ] 9.1.4 Two subtle bugs
[ ] 9.2 “Remember me” checkbox
[ ] 9.3 Remember tests
[ ] 9.3.1 Testing the “remember me” box
[ ] 9.3.2 Testing the remember branch
[ ] 9.4 Conclusion
[ ] 9.4.1 What we learned in this chapter
Chapter 10 Updating, showing, and deleting users
[ ] 10.1 Updating users
[ ] 10.1.1 Edit form
[ ] 10.1.2 Unsuccessful edits
[ ] 10.1.3 Testing unsuccessful edits
[ ] 10.1.4 Successful edits (with TDD)
[ ] 10.2 Authorization
[ ] 10.2.1 Requiring logged-in users
[ ] 10.2.2 Requiring the right user
[ ] 10.2.3 Friendly forwarding
[ ] 10.3 Showing all users
[ ] 10.3.1 Users index
[ ] 10.3.2 Sample users
[ ] 10.3.3 Pagination
[ ] 10.3.4 Users index test
[ ] 10.3.5 Partial refactoring
[ ] 10.4 Deleting users
[ ] 10.4.1 Administrative users
[ ] 10.4.2 The destroy action
[ ] 10.4.3 User destroy tests
[ ] 10.5 Conclusion
[ ] 10.5.1 What we learned in this chapter
Chapter 11 Account activation
[ ] 11.1 Account activations resource
[ ] 11.1.1 Account activations controller
[ ] 11.1.2 Account activation data model
[ ] 11.2 Account activation emails
[ ] 11.2.1 Mailer templates
[ ] 11.2.2 Email previews
[ ] 11.2.3 Email tests
[ ] 11.2.4 Updating the Users create action
[ ] 11.3 Activating the account
[ ] 11.3.1 Generalizing the authenticated? method
[ ] 11.3.2 Activation edit action
[ ] 11.3.3 Activation test and refactoring
[ ] 11.4 Email in production
[ ] 11.5 Conclusion
[ ] 11.5.1 What we learned in this chapter
Chapter 12 Password reset
[ ] 12.1 Password resets resource
[ ] 12.1.1 Password resets controller
[ ] 12.1.2 New password resets
[ ] 12.1.3 Password reset create action
[ ] 12.2 Password reset emails
[ ] 12.2.1 Password reset mailer and templates
[ ] 12.2.2 Email tests
[ ] 12.3 Resetting the password
[ ] 12.3.1 Reset edit action
[ ] 12.3.2 Updating the reset
[ ] 12.3.3 Password reset test
[ ] 12.4 Email in production (take two)
[ ] 12.5 Conclusion
[ ] 12.5.1 What we learned in this chapter
[ ] 12.6 Proof of expiration comparison
Chapter 13 User microposts
[ ] 13.1 A Micropost model
[ ] 13.1.1 The basic model
[ ] 13.1.2 Micropost validations
[ ] 13.1.3 User/Micropost associations
[ ] 13.1.4 Micropost refinements
[ ] 13.2 Showing microposts
[ ] 13.2.1 Rendering microposts
[ ] 13.2.2 Sample microposts
[ ] 13.2.3 Profile micropost tests
[ ] 13.3 Manipulating microposts
[ ] 13.3.1 Micropost access control
[ ] 13.3.2 Creating microposts
[ ] 13.3.3 A proto-feed
[ ] 13.3.4 Destroying microposts
[ ] 13.3.5 Micropost tests
[ ] 13.4 Micropost images
[ ] 13.4.1 Basic image upload
[ ] 13.4.2 Image validation
[ ] 13.4.3 Image resizing
[ ] 13.4.4 Image upload in production
[ ] 13.5 Conclusion
[ ] 13.5.1 What we learned in this chapter
Chapter 14 Following users
[ ] 14.1 The Relationship model
[ ] 14.1.1 A problem with the data model (and a solution)
[ ] 14.1.2 User/relationship associations
[ ] 14.1.3 Relationship validations
[ ] 14.1.4 Followed users
[ ] 14.1.5 Followers
[ ] 14.2 A web interface for following users
[ ] 14.2.1 Sample following data
[ ] 14.2.2 Stats and a follow form
[ ] 14.2.3 Following and followers pages
[ ] 14.2.4 A working follow button the standard way
[ ] 14.2.5 A working follow button with Ajax
[ ] 14.2.6 Following tests
[ ] 14.3 The status feed
[ ] 14.3.1 Motivation and strategy
[ ] 14.3.2 A first feed implementation
[ ] 14.3.3 Subselects
[ ] 14.4 Conclusion
[ ] 14.4.1 Guide to further resources
[ ] 14.4.2 What we learned in this chapter
Rails Tutorial Checklist
Content of Ruby on Rails Tutorial by Michael Hartl
Chapter 1 From zero to deploy
Chapter 2 A toy app
Chapter 3 Mostly static pages
Chapter 4 Rails-flavored Ruby
Chapter 5 Filling in the layout
Chapter 6 Modeling users
Chapter 7 Sign up
Chapter 8 Basic login
Chapter 9 Advanced login
Chapter 10 Updating, showing, and deleting users
Chapter 11 Account activation
Chapter 12 Password reset
Chapter 13 User microposts
Chapter 14 Following users