• Ruby on Rails

    • (def)
    • MVC (: pattern run-through)
    • Convention over Configuration
    • Example: Blog
  • Command line

    • bin/rails new my_rails_app
    • bin/rails generate
    • bin/rails routes
    • bin/rails db:migrate
    • bin/rails db:rollback
    • bin/rails db:setup
    • bin/rails db:prepare
    • bin/rails db:schema:dump
    • bin/rails db:schema:load
    • bin/rails db:seeds
    • bin/rails server
    • bin/rails console
    • bin/rails dbconsole
  • Routing

    • (def)
    • config/routes.rb
    • To define route(s) in config/routes.rb
    • 4 main HTTP verbs used with RESTful routes
    • 7 RESTful actions
    • URI
    • params hash
  • Controllers

    • (def)
    • To create a controller & action methods
    • render vs redirect_to
  • View (templates)

    • (def)
    • Layouts
    • Partials
    • ERB
    • Asset tags
    • <%= yield %>
  • Helper methods

    • Route helpers
    • Controller helpers
    • View helpers
    • Validation helpers
  • Models

    • (def)
    • Schema files
    • Model files
    • Validations
    • .errors
  • Active Record

    • (def)
    • ORM (def)
    • ORM (features)
    • Naming conventions
    • Namespacing models
    • Migration
    • Migration generation via CLI
    • schema_migrations table
    • db/seeds.rb
  • Validations (Active Record)

    • ActiveRecord methods that trigger validations
    • ActiveRecord methods that skips validations
    • Validation helper methods
    • Validation options
    • Validation conditionals (: :if / :unless)
    • Strict validations (: strict)
    • Listing validations of a class (: .validators)
    • Custom validations
    • errors
  • Associations (Active Record)

    • (def) (: Workflow)
    • Association methods (: belongs_to / has_one etc.)
    • Methods auto-generated by belongs_to
    • Methods auto-generated by has_one
    • Methods auto-generated by has_many
  • Rails classes/modules

    • AbstractController
      • (def)
      • AbstractController::Base
      • AbstractController::Base#render_to_body
      • AbstractController::Rendering#render
    • ActionController
    • ApplicationController
    • ActionDispatch
    • ActionView
    • ActiveRecord
    • ActiveModel