Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Learn Rails Tutorial (phamvantinh) #4

Open
khiemht-vn opened this issue Aug 17, 2017 · 0 comments
Open

Learn Rails Tutorial (phamvantinh) #4

khiemht-vn opened this issue Aug 17, 2017 · 0 comments
Assignees

Comments

@khiemht-vn
Copy link

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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants