Beispiel #1
0
 def put(self, item_id, action=None):
     """Обработка путей метода PUT"""
     if not item_id or action is not None:
         self.error404()
     else:
         #PUT     {prefix}/{id}	    обновляет значение элемента
         self.set_header('Content-Type', 'application/json')
         try:
             idx = int(item_id)
             req = { k: self.get_argument(k) for k in self.request.arguments }
             item = ItemList.update(idx, req)
             response = json_serialize(item)
             self.write(response)
         except IndexError as err:
             self.set_status(404, 'Item not found')
             self.write({'message': 'DoesNotExist'})
         except IntegrityError as err:
             self.set_status(405, 'Validation Exception')
             self.write({'message': 'Validation Exception'})
         except OutdatedError as err:
             self.set_status(400, 'Item is outdated')
             self.write({'message': 'Item is outdated'})