Tengo un proyecto nextJS que usa redux para la administración del estado y reacciona al administrador para el panel de administración. Tomé mis llaves no como id en lugar de _id . Así que seguí estos identificadores personalizados .
Mi aplicación.js
// in src/App.js import * as React from "react"; import { Provider } from "react-redux"; import { createHashHistory } from "history"; import { Admin, Resource, ListGuesser, fetchUtils } from "react-admin"; import jsonServerProvider from "ra-data-json-server"; import createAdminStore from "./createAdminStore"; import convertHTTPResponseToREST from "./dataProvider"; // dependency injection const dataProvider = jsonServerProvider( convertHTTPResponseToREST("http://localhost:3000/api/products") ); const authProvider = () => Promise.resolve(); const history = createHashHistory(); const App = () => ( <Provider store={createAdminStore({ authProvider, dataProvider, history, })} > <Admin title="Dashboard" dataProvider={dataProvider} history={history}> <Resource name="products" list={ListGuesser} /> </Admin> </Provider> ); export default App;mi proveedor de datos.js
import { CREATE, DELETE, GET_LIST, GET_MANY_REFERENCE, GET_ONE, UPDATE, } from "react-admin"; const convertHTTPResponseToREST = (response, type, resource, params) => { const { headers, json } = response; switch (type) { case GET_LIST: return { data: json.map((resource) => ({ ...resource, id: resource._id })), total: parseInt(headers.get("content-range").split("/").pop(), 10), }; case UPDATE: case DELETE: case GET_ONE: return { ...json, id: json._id }; case CREATE: return { ...params.data, id: json._id }; default: return json; } }; export default convertHTTPResponseToREST;Entonces, ¿cómo usar la función convertHTTPResponseToRest dentro de la etiqueta Admin ?
Está viendo la documentación de admin-on-rest.
Esta es la documentación de react-admin:
https://marmelab.com/react-admin/FAQ.html#can-i-have-custom-identifiersprimary-keys-for-my-resources