sjcowans / set_list_tutorial

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Set List Tutorial

This repository serves as an in-class project for Turing's Mod 2 BE program. Through working on this tutorial, students will gain an understanding of and practice the following topics (among others):

  • Model testing
  • Migrations
  • Feature testing
  • MVC
  • ActiveRecord & SQL
  • Forms

Setup

Clone (don't fork) this repo to your local. Then, run the following commands in Terminal:

bundle install
rails db:{drop,create,migrate,seed}

You should then be able to access the databases called set_list_development and set_list_test.

How to Use

This application starts with schema and corresponding tests for Artists and Songs. Throughout classes in mod 2, students will be asked to work on adding various features to this application. It is recommended that students use the main branch of this repo, and add to it on their own machines. There is no need to submit any pull requests to the original repo, as this is a practice application.

Students can also check out the branches in this repo to visit the code and add their work there at different points in time. The following table lists the classes in mod 2, the branch for where the class starts, and the branch with the completed code from the class.

Warning

Note: we don't recommend forking this repo, as there are many branches that you'll lose access to if you fork. Since this is a tutorial, you can reference the many branches in this repo for the class you're currently working on. Forking will not bring these branches with your forked copy.

Also, this tutorial is most useful going class-by-class, not necessarily done in addition to any intermission work. If you have context/prior knowledge for the topics explored in this repository, you can use it to practice those topics. Generally, we advise students to wait until the topic comes up in a project or class to explore the branches of this repo.

To switch branches, in Terminal:

git checkout {name_of_branch}

To see all branches available on the remote, in Terminal:

git branch -a

Branch Directory

Class Starting Branch Completed Branch
Songs Index none songs_index
Songs Show songs_index songs_show
ActiveRecord Associations (homework video) songs_show artist_songs_index
Feature Testing feature_testing_practice feature_testing_solutions
ActiveRecord Associations (live class) associations_practice associations_practice_solutions
SQL and ActiveRecord associations_practice
Forms (homework video) artist_songs_index artist_new
Class vs Instance Methods class_instance_methods_setup class_instance_methods_solutions
Many to Many many_to_many_practice many_to_many
Joins many_to_many
Data Validations validations
Sad Path Testing & Flash Messages sad_path_setup sad_path_complete
Partials partials partials_solutions
Advanced Routing advanced_routing advanced_routing_solutions
Grouping & Aggregating advanced_routing (no completed branch)
Binding Models to Forms advanced_routing binding_models_solutions

Note: This table is always being updated. Please submit a pull request if something needs changed!

About


Languages

Language:Ruby 81.4%Language:HTML 14.5%Language:JavaScript 2.5%Language:CSS 1.6%