Карта datatables.js запрос к модели pydantic

#fastapi #pydantic

Вопрос:

Я создаю некоторые таблицы на стороне сервера для поддержки разбиения на страницы, поиска и так далее. На стороне клиента я использую datatable.js библиотеку. Эта библиотека отправляет запросы GET в форме, подобной этой:

 GET /api/data?draw=22amp;columns[0][data]=nameamp;columns[0][name]=amp;columns[0][searchable]=trueamp;columns[0][orderable]=trueamp;columns[0][search][value]=amp;columns[0][search][regex]=falseamp;columns[1][data]=ageamp;columns[1][name]=amp;columns[1][searchable]=trueamp;columns[1][orderable]=trueamp;columns[1][search][value]=amp;columns[1][search][regex]=falseamp;columns[2][data]=addressamp;columns[2][name]=amp;columns[2][searchable]=trueamp;columns[2][orderable]=falseamp;columns[2][search][value]=amp;columns[2][search][regex]=falseamp;columns[3][data]=phoneamp;columns[3][name]=amp;columns[3][searchable]=trueamp;columns[3][orderable]=falseamp;columns[3][search][value]=amp;columns[3][search][regex]=falseamp;columns[4][data]=emailamp;columns[4][name]=amp;columns[4][searchable]=trueamp;columns[4][orderable]=trueamp;columns[4][search][value]=amp;columns[4][search][regex]=falseamp;order[0][column]=0amp;order[0][dir]=ascamp;start=30amp;length=10amp;search[value]=assamp;search[regex]=falseamp;_=1635453433852 HTTP/1.1
 

Каков был бы предпочтительный способ отображения этих параметров запроса в объект pydantic с надлежащей проверкой? Некоторые из этих значений потенциально могут использоваться в SQL-запросе.

Вот документация по всем параметрам:

https://datatables.net/manual/server-side