У меня есть Plants
, у каждого из которых много Infos
. Я хочу иметь возможность редактировать/создавать Plant
и создавать adhoc Info
, прикрепленный к нему..
Вот как я построил PlantEdit и PlantCreate:
export const PlantEdit = (props) => (
<Edit title={<PlantTitle />} {...props}>
<SimpleForm>
<TextInput source="name"/>
</SimpleForm>
</List>
</Edit>
);
export const PlantCreate = (props) => (
<Create {...props}>
<SimpleForm>
<TextInput source="name"/>
</SimpleForm>
</Create>
);
вот функция InfoCreate - у нее есть меню предложений для поиска одного из уже существующих растений:
export const InfoCreate = (props) => (
<Create {...props}>
<SimpleForm>
<TextInput source="name"/>
</SimpleForm>
<ReferenceArrayInput label="Info" source="plantId" reference="plants">
<SelectArrayInput optionText="name" translate={false}/>
</ReferenceArrayInput>
</Create>
);
Они работают независимо.. но я хотел бы объединить их во время создания/редактирования Plant
, чтобы он одновременно создавал Info
.. другими словами, идентификатор растения «прикреплялся» к информации, пока я создавал ее с помощью Plant
редактирования/создания. форма. Я думал о всплывающем окне, которое создает временный файл Info
, и когда он отправляется, он сохраняется в базе данных.
Вот конфигурация приложения:
const App = () => (
<Admin
theme={getMuiTheme(customTheme)}
title={<img src="imageserver/logo.png" alt="logo" width="120" height="auto" />}
restClient={delayedRestClient}
// restClient={jsonServerRestClient('http://localhost/plants/web/api/v1')}
loginPage={Login}
authClient={authClient}
appLayout={Layout}
dashboard={Dashboard}
customRoutes={customRoutes}
menu={Menu}
messages={translations}
>
<Resource name="plants" list={PlantList} icon={PlantIcon} create={PlantCreate} edit={PlantEdit} />
<Resource name="infos" list={InfoList} icon={InfoIcon} create={InfoCreate} edit={InfoEdit} />
</Admin>
);
export default App;
как с этим можно справиться?
Я попытался импортировать эти функции, и у меня возникли проблемы с импортом/экспортом, так что это не работает. Я также пытался просто использовать внутренние элементы и копировать их в другую форму (не зная, как передать идентификатор от дочернего элемента родительскому), но я получил бесконечный цикл при переходе к родительской форме.
Заранее спасибо!