def put(self, branch_name, name): is_admin = Item.is_admin() if not is_admin: return {'message': 'You are not privileged to continue!'}, 400 branch = BranchModel.find_by_name(branch_name) if not branch: return {'message': "Branch '{}' does not exist.".format(branch_name)}, 400 data = Item.parser.parse_args() error_validation = validators.item_validator(**data) if error_validation['error validation']: return error_validation item = ItemModel.find_by_name_in_branch(branch.id, name) log = LogModel("update item '{}'".format(name), g.user.username, Item.admin) if item is None: item = ItemModel(name, **data) else: item.price = data['price'] item.year = data['year'] item.item_type = data['item_type'] item.vendor = data['vendor'] item.model = data['model'] item.branch_id = data['branch_id'] item.save_to_db() log.save_to_db() return item.json()