def put(self, username):
        request_data = User.parse_user_data()
        user = UserModel.find_user_by_username(username)

        if user:
            user.password = request_data['password']
        else:
            user = UserModel(None, username, **request_data)

        try:
            user.add_or_update_user()
        except:
            return {
                'message': "User '{}' failed to be added".format(username)
            }, 500

        return {'message': "Added or updated user '{}'".format(username)}
    def post(self, username):
        user = UserModel.find_user_by_username(username)
        if user:
            return {
                'message':
                "A user with the username '{}' already exists".format(username)
            }, 400
        request_data = User.parse_user_data()
        user = UserModel(None, username, request_data['password'])
        try:
            user.add_or_update_user()
        except:
            return {
                'message': "User '{}' failed to be added".format(username)
            }, 500

        return user.json(), 201