From c1db2f3a42b6535d72851d3481d8f0763ea01204 Mon Sep 17 00:00:00 2001 From: Matt Huntington Date: Tue, 20 Mar 2018 21:44:23 -0400 Subject: [PATCH] Create an update route --- app/controllers/people_controller.rb | 4 ++++ app/models/person.rb | 5 +++++ config/routes.rb | 1 + 3 files changed, 10 insertions(+) diff --git a/app/controllers/people_controller.rb b/app/controllers/people_controller.rb index 40aa266..cded508 100644 --- a/app/controllers/people_controller.rb +++ b/app/controllers/people_controller.rb @@ -16,4 +16,8 @@ class PeopleController < ApplicationController def delete render json: Person.delete(params["id"]) end + + def update + render json: Person.update(params["id"], params["person"]) + end end diff --git a/app/models/person.rb b/app/models/person.rb index 7dbfd62..6d9270b 100644 --- a/app/models/person.rb +++ b/app/models/person.rb @@ -27,4 +27,9 @@ class Person results = DB.exec("DELETE FROM people WHERE id=#{id};") return { deleted: true } end + + def self.update(id, opts={}) + results = DB.exec("UPDATE people SET name='#{opts["name"]}', age=#{opts["age"]} WHERE id=#{id} ;") + return { updated: true } + end end diff --git a/config/routes.rb b/config/routes.rb index fe7feff..52b3d71 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -4,4 +4,5 @@ Rails.application.routes.draw do get '/people/:id', to: 'people#show' post '/people', to: 'people#create' delete '/people/:id', to: 'people#delete' + put '/people/:id', to: 'people#update' end