Esempio n. 1
0
 def delete(self, id):
     if not ObjectId.is_valid(id):
         return {'message': 'Error Incorrect Id'}, 400
     beach_deleted = db.delete_one({'_id': ObjectId(id)})
     if not beach_deleted.deleted_count:
         return {'message': 'Error Incorrect Id'}, 400
     return jsonify({'message': 'Beach Delete'})
Esempio n. 2
0
 def get(self, id):
     if not ObjectId.is_valid(id):
         return {'message': 'Error Incorrect Id'}, 400
     beach = db.find_one_or_404({'_id': ObjectId(id)})
     try:
         beach_validated = beach_schema.load(beach)
     except ValidationError as err:
         return err.messages, 400
     return jsonify(fill_fields(defaultdict(str, beach_validated), True))
Esempio n. 3
0
    def find_user(self, user_info):
        found = False
        if (ObjectId.is_valid(user_info)):
            found = database.db.users.find_one({"_id": ObjectId(user_info)})

        if not found:
            found = database.db.users.find_one({"username": user_info})

        if found:
            found['_id'] = str(found['_id'])
            found['password'] = "******"
        return found
Esempio n. 4
0
    def put(self, id):
        if not ObjectId.is_valid(id):
            return {'message': 'Error Incorrect Id'}, 400
        try:
            beach_schema.load(
                fill_fields(defaultdict(str, request.json), False))
            db.update_one(
                {'_id': ObjectId(id)},
                {'$set': fill_fields(defaultdict(str, request.json), False)})
        except ValidationError as err:
            return err.messages, 400

        return jsonify({'message': 'Beach Updated'})
Esempio n. 5
0
 def replace_object_id(document):
     """
     Replace all _id values in a JSON-style dictionary document with
     the MongoDB ObjectID type value. This is a requirement when using
     MongoDB's unique IDs. (i.e # Update entry matching
     {_id: "sdfr23hfk23f23"} to {_id: ObjectID("sdfr23hfk23f23")})
     """
     if isinstance(document, dict):
         return {
             key: Database.replace_object_id(val)
             for key, val in document.items()
         }
     if isinstance(document, list):
         return [Database.replace_object_id(val) for val in document]
     if isinstance(document, str) and ObjectId.is_valid(document):
         return ObjectId(document)
     return document