From 0d7391d64b07a6545c84a0caf177db52402cfc02 Mon Sep 17 00:00:00 2001 From: paolacalle <98432607+paolacalle@users.noreply.github.com> Date: Thu, 14 Sep 2023 00:30:53 -0400 Subject: [PATCH 01/45] Created rake task to import station & bike data from csv files --- lib/tasks/import_bikes.rake | 42 ++++++++++++++++++++++++++++++++++ lib/tasks/import_stations.rake | 19 +++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 lib/tasks/import_bikes.rake create mode 100644 lib/tasks/import_stations.rake diff --git a/lib/tasks/import_bikes.rake b/lib/tasks/import_bikes.rake new file mode 100644 index 000000000..d3eccf3e4 --- /dev/null +++ b/lib/tasks/import_bikes.rake @@ -0,0 +1,42 @@ + + +# lib/tasks/import_bike.rake + +require_relative '../../config/environment' +require 'csv' +csv_file = 'notes/bike-data.csv' + +namespace :import do + task :bikes => :environment do + + CSV.foreach(csv_file, headers: true) do |row| + Bike.create!( + identifier: row['identifier'], + current_station_id: row['current_station_id'], + created_at: row['created_at'], + updated_at: row['updated_at'] + ) + end + + puts "Success import of #{csv_file} into **Bike** db." + end +end + + +# csv_text = File.read('notes/bike-data.csv') +# csv = CSV.parse(csv_text, :headers => true) +# csv.each do |row| +# CreateBikes.create!(row.to_hash) +# end + +# namespace :import do +# desc "Import data from stations.csv" +# task :bikes => :environment do +# require 'csv' +# csv_text = File.read('notes/bike-data.csv') + +# CSV.parse(csv_text, headers: true) do |row| +# CreateBikes.create!(row.to_hash) +# end +# end +# end \ No newline at end of file diff --git a/lib/tasks/import_stations.rake b/lib/tasks/import_stations.rake new file mode 100644 index 000000000..871ec52e6 --- /dev/null +++ b/lib/tasks/import_stations.rake @@ -0,0 +1,19 @@ +require_relative '../../config/environment' +require 'csv' +csv_file = 'notes/station-data.csv' + +namespace :import do + task :stations => :environment do + + CSV.foreach(csv_file, headers: true) do |row| + Station.create!( + identifier: row['identifier'], + name: row['name'], + address: row['address'], + created_at: row['created_at'], + updated_at: row['updated_at'] + ) + end + puts "Success import of #{csv_file} into **Station** db." + end +end \ No newline at end of file From bcee2cb92a5840ddcd88e011c9b9f3f9539c0a86 Mon Sep 17 00:00:00 2001 From: paolacalle <98432607+paolacalle@users.noreply.github.com> Date: Sun, 17 Sep 2023 09:49:03 -0400 Subject: [PATCH 02/45] Added navbar/links, displayed bike/station lists, add more pages --- Gemfile.lock | 1 + app/controllers/bikes_controller.rb | 7 ++++ app/controllers/home_controller.rb | 4 +++ app/helpers/bikes_helper.rb | 2 ++ app/helpers/home_helper.rb | 2 ++ app/views/bikes/_row.html.erb | 17 +++++++++ app/views/bikes/index.html.erb | 20 +++++++++++ app/views/home/index.html.erb | 6 ++++ app/views/layouts/_navbar.html.erb | 22 ++++++++++++ app/views/layouts/application.html.erb | 8 +++++ app/views/stations/_row.html.erb | 4 +++ app/views/stations/index.html.erb | 7 ++-- config/routes.rb | 8 +++-- db/migrate/20220831090424_create_stations.rb | 3 +- db/migrate/20220831090719_create_bikes.rb | 1 - lib/tasks/import_bikes.rake | 6 +--- lib/tasks/import_stations.rake | 37 +++++++++++++------- test/controllers/bikes_controller_test.rb | 7 ++++ test/controllers/home_controller_test.rb | 8 +++++ 19 files changed, 145 insertions(+), 25 deletions(-) create mode 100644 app/controllers/bikes_controller.rb create mode 100644 app/controllers/home_controller.rb create mode 100644 app/helpers/bikes_helper.rb create mode 100644 app/helpers/home_helper.rb create mode 100644 app/views/bikes/_row.html.erb create mode 100644 app/views/bikes/index.html.erb create mode 100644 app/views/home/index.html.erb create mode 100644 app/views/layouts/_navbar.html.erb create mode 100644 test/controllers/bikes_controller_test.rb create mode 100644 test/controllers/home_controller_test.rb diff --git a/Gemfile.lock b/Gemfile.lock index c3e104938..c90d46043 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -223,6 +223,7 @@ GEM PLATFORMS arm64-darwin-20 + arm64-darwin-22 x86_64-linux DEPENDENCIES diff --git a/app/controllers/bikes_controller.rb b/app/controllers/bikes_controller.rb new file mode 100644 index 000000000..4a81f1581 --- /dev/null +++ b/app/controllers/bikes_controller.rb @@ -0,0 +1,7 @@ +class BikesController < ApplicationController + def index + @bikes = Bike.all.order(identifier: :asc) + + end + +end diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb new file mode 100644 index 000000000..95f29929c --- /dev/null +++ b/app/controllers/home_controller.rb @@ -0,0 +1,4 @@ +class HomeController < ApplicationController + def index + end +end diff --git a/app/helpers/bikes_helper.rb b/app/helpers/bikes_helper.rb new file mode 100644 index 000000000..a2645e4e1 --- /dev/null +++ b/app/helpers/bikes_helper.rb @@ -0,0 +1,2 @@ +module BikesHelper +end diff --git a/app/helpers/home_helper.rb b/app/helpers/home_helper.rb new file mode 100644 index 000000000..23de56ac6 --- /dev/null +++ b/app/helpers/home_helper.rb @@ -0,0 +1,2 @@ +module HomeHelper +end diff --git a/app/views/bikes/_row.html.erb b/app/views/bikes/_row.html.erb new file mode 100644 index 000000000..8288b170a --- /dev/null +++ b/app/views/bikes/_row.html.erb @@ -0,0 +1,17 @@ +