From 03d6b34c41a73a5bba2eaee2c496a48391d06e99 Mon Sep 17 00:00:00 2001 From: Jose Contreras Date: Mon, 13 Apr 2020 22:42:56 -0700 Subject: [PATCH 1/3] Turn on view again for post. --- app/views/building.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/app/views/building.py b/app/views/building.py index dbd499c..d6cca61 100644 --- a/app/views/building.py +++ b/app/views/building.py @@ -44,16 +44,13 @@ class BuildingView(UnprotectedRestView): # BIS needs to be able to hit this route without a user token def post(self): - # TODO: Enable post to create buildings - raise MethodNotAllowed() - # return self.json( - # self.parse( - # self.get_controller().post(request.args) - # ) - # ) + return self.json( + self.parse( + self.get_controller().post(request.args) + ) + ) def put(self, id_): - # TODO: Enable put to update buildings raise MethodNotAllowed() def delete(self, id_): -- GitLab From 7f56c2976715c9debfdab921fe572a0f174301c6 Mon Sep 17 00:00:00 2001 From: Jose Contreras Date: Wed, 15 Apr 2020 15:18:14 -0700 Subject: [PATCH 2/3] Make sure to use data object for post requests. --- app/controllers/building.py | 7 ++++--- app/views/building.py | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/controllers/building.py b/app/controllers/building.py index 1d90d2b..9d2c11a 100644 --- a/app/controllers/building.py +++ b/app/controllers/building.py @@ -62,18 +62,19 @@ class BuildingController(RestController): return building_list[0] - def post(self, filter_data): + def post(self, data, filter_data): """ Creates a building object Args: + data: args for stored procedures filter_data (ImmutableMultiDict): Args for stored proc Returns: dict: Building object """ - clean_filter_data = {k: v.strip() for k, v in filter_data.to_dict().items() if v} + clean_data = {k: v.strip() for k, v in data.items() if v} try: - building_list = proc(self.Model, self.Model.PROCS['CREATE_BUILDING'], **clean_filter_data) + building_list = proc(self.Model, self.Model.PROCS['CREATE_BUILDING'], **clean_data) except Exception as err: raise ( BadRequest(str(err)) if current_app.config['DEBUG'] else diff --git a/app/views/building.py b/app/views/building.py index d6cca61..5715852 100644 --- a/app/views/building.py +++ b/app/views/building.py @@ -1,5 +1,5 @@ """Views for working with buildings.""" -from flask import request +from flask import request,current_app from werkzeug.exceptions import MethodNotAllowed from .base import UnprotectedRestView from ..controllers.building import BuildingController @@ -46,7 +46,7 @@ class BuildingView(UnprotectedRestView): def post(self): return self.json( self.parse( - self.get_controller().post(request.args) + self.get_controller().post(self.request_json(), request.args) ) ) -- GitLab From df08c9ea27b93333a12eb7fe25dd3604d5b1879a Mon Sep 17 00:00:00 2001 From: Jose Contreras Date: Wed, 15 Apr 2020 15:43:14 -0700 Subject: [PATCH 3/3] Remove unused import. --- app/views/building.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/building.py b/app/views/building.py index 5715852..a49dd94 100644 --- a/app/views/building.py +++ b/app/views/building.py @@ -1,5 +1,5 @@ """Views for working with buildings.""" -from flask import request,current_app +from flask import request from werkzeug.exceptions import MethodNotAllowed from .base import UnprotectedRestView from ..controllers.building import BuildingController -- GitLab