Реагировать администратора — CloneButton — исключить идентификатор

#reactjs #react-admin

#reactjs #реагировать-администратор

Вопрос:

Я использовал ‘clonebutton’ от react-admin, который позволит мне клонировать / копировать существующую запись данных в другую и откроет форму редактирования. Но он клонирует все поля, я просто хочу исключить поле идентификатора, иначе у меня ошибка :

 {"name":"Conflict","message":"id: value already exists.","code":409,"className":"conflict","errors":{"id":"value"}}
 

Как я могу это сделать?

Комментарии:

1. В github.com/marmelab/react-admin/blob/master/packages /… Я вижу источник: JSON.stringify(omitId(record)), и omitId исключает только идентификатор, но в mongoose идентификатор равен _id , есть идея обойти?

2. Единственное решение, которое я нашел: const cloneElement = ({ record }) => { вернуть запись? ( <CloneButton to={{ pathname: ‘/templates/create’, search: ?source=${JSON.stringify(omitId(record))} , }} /> ) : null; }; const omitId = ({ _id, …rest }) => rest;

3. const TemplateList = (реквизит) => { return ( <Список {…реквизит}> <Datagrid rowClick=’редактировать’> <Источник текстового поля=’Имя_шаблона’ /> <Источник текстового поля=’тема’ /> <Источник текстового поля=’htmlContent’ /> <Источник текстового поля=’язык’/> <cloneElement /> </Datagrid> </List> ); };