Python Eve - REST API Additional_lookup не работает - PullRequest
0 голосов
/ 13 сентября 2018

Я столкнулся с точно такой же проблемой, которая описана здесь .У меня есть user_creds конечная точка для моего API.Когда я захожу на localhost:5000/user_creds/, я вижу все документы в этой коллекции.Но когда я делаю что-то вроде localhost:5000/user_creds/someemail@gmail.com, я всегда получаю ответ 404. Not Found.

user_creds домен в settings.py выглядит следующим образом:

'user_creds': {
        'schema': { 
            'email': {
                'type': 'string',
                'regex': r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)",
                'required': True,
                'unique': True,
            },
            'password': {
                'type': 'string',
                'required': True
            },
        }

        'resource_methods': ['GET', 'POST'],

        'item_methods': ['GET', 'PATCH', 'PUT'],

        'additional_lookup': {
            'url': 'regex("^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$")',
            'field': 'email'
        }
    }

Я слежу заприведенный пример здесь но не могу понять, где я иду не так.Кроме того, если я посещаю этот URL: http://127.0.0.1:5000/user_creds?email==%22abcd12@gmail.com%22, я получаю все документы в коллекции вместо того, чтобы получать только один документ, который соответствует регулярному выражению электронной почты.Если я посещаю это http://127.0.0.1:5000/user_creds?where=email==%22abcd12@gmail.com%22, я получаю желаемый ответ.

...