# HG changeset patch # User Frank Bessou <frank.bessou@logilab.fr> # Date 1614253035 -3600 # Thu Feb 25 12:37:15 2021 +0100 # Node ID eb356ab55f0301e15bc636345abeff3c1577999a # Parent ee0b249da2fc1c8d492a0400efb9a5ad33cd6be1 feat(demo): allow to create museums Demonstrates how to create relationships to existing entities diff --git a/packages/demo/src/App.tsx b/packages/demo/src/App.tsx --- a/packages/demo/src/App.tsx +++ b/packages/demo/src/App.tsx @@ -1,6 +1,8 @@ import * as React from "react"; import { Admin, + Create, + CreateProps, Resource, List, Datagrid, @@ -14,6 +16,8 @@ SimpleForm, TextInput, NumberInput, + ReferenceInput, + AutocompleteInput, EditProps, ShowProps, ListProps, @@ -54,6 +58,26 @@ </Edit> ); +const MuseumCreate = (props: CreateProps) => ( + <Create {...props}> + <SimpleForm> + <TextInput source="name" /> + <NumberInput source="latitude" /> + <NumberInput source="longitude" /> + <TextInput source="postal_address" /> + <ReferenceInput + label="City" + source="is_in" + reference="City" + sort={{ field: "name", order: "ASC" }} + filterToQuery={(text: string) => ({ name: text })} + > + <AutocompleteInput optionText="name" /> + </ReferenceInput> + </SimpleForm> + </Create> +); + const MuseumFilter = (props: Omit<FilterProps, "children">) => ( <Filter {...props}> <SearchInput source="name" alwaysOn /> @@ -118,6 +142,7 @@ list={MuseumList} show={MuseumShow} edit={MuseumEdit} + create={MuseumCreate} /> <Resource name="City" list={CityList} show={CityShow} /> </Admin>