Как использовать пользовательское поле в react admin, вместо {data: […]}

#reactjs #react-admin

#reactjs #react-admin

Вопрос:

Я новичок в react-admin и пытаюсь создать новую панель администратора для моего старого API. Поэтому, когда мой поставщик данных вызывает API, это вызывает у меня эту ошибку:

 The response to 'getList' must be like { data : [...] }, but the received data is not an array. The dataProvider is probably wrong for 'getList'
 

Ответы моего старого API содержат различные поля данных, такие как {‘posts’: []} или {‘users’: []}. Как я могу использовать эти имена полей вместо {‘data’: []} ?

Ответ №1:

«Данные» в этом случае просто относятся к типу информации, которая должна быть перенастроена, а не к имени объекта.

В вашем API вы можете просто вернуть список в следующей форме:

    const posts = [
        {
           "id":1,
           "name":"post1"
        },
        {
           "id":2,
           "name":"post2"
        },

   ];

return JSON.stringify(posts);
 

Затем верните этот объект ‘posts’ в свой ответ и не забудьте установить ожидаемые заголовки ContentRange.

Не уверен, какой язык вы используете, но приведенный выше принцип должен быть достаточно простым для выполнения и применения на любом языке.