Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion Rakefile
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
require_relative 'config/environment'
require 'sinatra/activerecord/rake'
require 'sinatra/activerecord/rake'

desc "start console"
task :console do
Pry.start
end
2 changes: 1 addition & 1 deletion config/database.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
development:
adapter: sqlite3
database: db/cats.sqlite3
database: db/GitFit_db.sqlite3
14 changes: 13 additions & 1 deletion config/environment.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,16 @@
require 'bundler/setup'
Bundler.require

require_all 'lib'
require 'active_record'
require_all 'lib'
require_relative '../db/seeds'

# ENV["PLAYLISTER_ENV"] ||= "development"

# ActiveRecord::Base.establish_connection(ENV["PLAYLISTER_ENV"].to_sym)

# ActiveRecord::Base.logger = nil

# if ENV["PLAYLISTER_ENV"] == "test"
# ActiveRecord::Migration.verbose = false
# end
9 changes: 9 additions & 0 deletions db/migrate/001_create_members.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
class CreateMembers < ActiveRecord::Migration[6.0]

def change
create_table :members do |t|
t.string :name
t.string :goal
end
end
end
10 changes: 10 additions & 0 deletions db/migrate/002_create_gym_sessions.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
class CreateGymSessions < ActiveRecord::Migration[6.0]

def change
create_table :gym_sessions do |t|
t.string :name
t.references :member
t.references :workout
end
end
end
8 changes: 8 additions & 0 deletions db/migrate/003_create_workouts.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
class CreateWorkouts < ActiveRecord::Migration[6.0]

def change
create_table :workouts do |t|
t.string :body_part
end
end
end
32 changes: 32 additions & 0 deletions db/schema.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# This file is auto-generated from the current state of the database. Instead
# of editing this file, please use the migrations feature of Active Record to
# incrementally modify your database, and then regenerate this schema definition.
#
# This file is the source Rails uses to define your schema when running `rails
# db:schema:load`. When creating a new database, `rails db:schema:load` tends to
# be faster and is potentially less error prone than running all of your
# migrations from scratch. Old migrations may fail to apply correctly if those
# migrations use external dependencies or application code.
#
# It's strongly recommended that you check this file into your version control system.

ActiveRecord::Schema.define(version: 3) do

create_table "gym_sessions", force: :cascade do |t|
t.string "name"
t.integer "member_id"
t.integer "workout_id"
t.index ["member_id"], name: "index_gym_sessions_on_member_id"
t.index ["workout_id"], name: "index_gym_sessions_on_workout_id"
end

create_table "members", force: :cascade do |t|
t.string "name"
t.string "goal"
end

create_table "workouts", force: :cascade do |t|
t.string "body_part"
end

end
28 changes: 28 additions & 0 deletions db/seeds.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
Workout.delete_all
Member.delete_all
GymSession.delete_all

michael = Member.create(:name=>"Michael", :goal=>"strength")
derek = Member.create(:name=>"Derek", :goal=>"Weight Loss")
gordo = Member.create(:name=>"Gordo", :goal=>"strength")

chest_workout = Workout.create(:body_part=>"Chest")
back_workout = Workout.create(:body_part=>"back")
arms_workout = Workout.create(:body_part=>"arms")

session1 = GymSession.create(:name=>"First of day")
session2 = GymSession.create(:name=>"2nd of day")
session3 = GymSession.create(:name=>"3rd of day")

session1.member = michael
session2.member = derek
session3.member = gordo

michael.gym_sessions << session1
gordo.gym_sessions << session3
derek.gym_sessions << session2

chest_workout.gym_sessions << session1
back_workout.gym_sessions << session2
arms_workout.gym_sessions << session3

2 changes: 2 additions & 0 deletions lib/models/cli.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
class Cli < ActiveRecord::Base
end
4 changes: 4 additions & 0 deletions lib/models/gym_session.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
class GymSession < ActiveRecord::Base
belongs_to :member
belongs_to :workout
end
4 changes: 4 additions & 0 deletions lib/models/member.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
class Member < ActiveRecord::Base
has_many :gym_sessions
has_many :workouts, through: :gym_sessions
end
5 changes: 5 additions & 0 deletions lib/models/workout.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
class Workout < ActiveRecord::Base
has_many :gym_sessions
has_many :members, through: :gym_sessions

end
7 changes: 4 additions & 3 deletions runner.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
require_relative 'config/environment'

Cli.new.start_game

require 'pry'
# Cli.new


binding.pry
0