예제 #1
0
def delete_item(user, id):
    if not user:
        return jsonify({'message': 'Unauthorized'}), 401
    item = Item.find_by_id(id)
    if not item:
        return jsonify({'message': 'Item not found'}), 404
    if user.id != item.user_id:
        return jsonify({'message': 'No permission'}), 403
    item.delete_from_db()
    return jsonify({'message': 'Item deleted'}), 200
예제 #2
0
 def put(self, _id):
     data = ItemResource.parser.parse_args()
     item = Item.find_by_id(_id)
     updated_item = Item(_id, data['name'], data['price'])
     if item is None:
         try:
             updated_item.insert()
         except:
             return {"message": "An error occurred inserting the item."}
     else:
         try:
             updated_item.update()
         except:
             raise
             return {"message": "An error occurred updating the item."}
     return updated_item.json()
예제 #3
0
def edit_item(user, id):
    if not user:
        return jsonify({'message': 'Unauthorized'}), 401
    item = Item.find_by_id(id)
    if not item:
        return jsonify({'message': 'Item not found'}), 404
    if user.id != item.user_id:
        return jsonify({'message': 'No permission'}), 403
    data = request.json
    if 'name' in data and data['name']:
        name = data['name'].strip()
        if not name or len(name) > MAX_NAME_LENGTH:
            return jsonify({'message': 'Bad request'}), 400
        item.name = name
    if 'description' in data and data['description']:
        description = data['description'].strip()
        if len(description) > MAX_DESCRIPTION_LENGTH:
            return jsonify({'message': 'Bad request'}), 400
        item.description = description
    item.save_to_db()
    return jsonify({'message': 'Item edited', 'catalog': item.serializer}), 200
예제 #4
0
 def __post_init__(self):
     self.item = Item.find_by_id(self.item_id)
     self.user = User.find_by_email(self.user_email)
예제 #5
0
 def __init__(self, item_id: str, price_limit: float, _id: str = None, *args, **kwargs):
     super().__init__(*args, **kwargs)
     self.item_id = item_id
     self.item = Item.find_by_id(item_id)
     self.price_limit = price_limit
     self._id = _id or uuid.uuid4.hex
예제 #6
0
 def __post_init__(self):
     self.item = Item.find_by_id(self.item_id)
예제 #7
0
 def __init__(self, item_id: str, price_limit: float):
     super().__init__()
     self.item_id = item_id
     self.item = Item.find_by_id(self.item_id)
     self.price_limit = price_limit
예제 #8
0
 def get(self, _id):
     item = Item.find_by_id(_id)
     if item:
         return item.json(), 200
     return {'message': 'Item {} not found'.format(_id)}, 404
from models.item import Item
import psycopg2

item = Item.find_by_id(1)
print(item)
#Item.create_item("Teste 3")
#item2 = Item.find_by_id(8)

item_update = Item.find_by_id(4)
data = ["Update Teste", True]
item_update.update_item(4, data)
#Item.delete_item(10)