У меня проблемы с типом list
в моих схемах. Всякий раз, когда я пытаюсь выполнить POST, я получаю ответ 422, в котором говорится, что «должен быть типа списка». Ниже приведен простой пример, который создает эту проблему.
from eve import Eve
people = {
'schema': {
'tests': {
'type': 'list',
'schema': {
'type': 'string'
},
'required': True,
}
},
'resource_methods': ['GET', 'POST'],
}
settings = {
'DOMAIN': {
'people': people
}
}
app = Eve(settings=settings)
if __name__ == '__main__':
app.run()
Затем, когда вы отправляете сообщение на конечную точку людей со следующим:
import requests
url = "http://localhost:5000/people"
person = {
"tests": ['a', 'b'],
}
r = requests.post(url, data=person)
print(r.json())
Вы получаете ответ 422. Когда я отлаживаю это, похоже, что приложение Eve получило параметр tests
как просто строку 'a'
, а не весь список. Из того, что я вижу в тестах Eve на GitHub, кажется, что это правильный способ сделать запрос, поэтому я могу только предположить, что делаю ошибку при настройке ресурса/схемы?
Спасибо.