Skip to content

Commit c027d7f

Browse files
committed
Add support for post create
1 parent ebc9267 commit c027d7f

File tree

2 files changed

+16
-23
lines changed

2 files changed

+16
-23
lines changed

src/App.js

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,17 @@
1-
// Customize PostEdit with disabled id field, name for user reference field and long text input for editing body field
1+
// Add support for post create.
22
// https://marmelab.com/react-admin/Tutorial.html
33

4-
/*
5-
6-
PostList EditGuesser recommendations:
7-
8-
Guessed Edit:
9-
10-
export const PostEdit = props => (
11-
<Edit {...props}>
12-
<SimpleForm>
13-
<ReferenceInput source="userId" reference="users"><SelectInput optionText="id" /></ReferenceInput>
14-
<TextInput source="id" />
15-
<TextInput source="title" />
16-
<TextInput source="body" />
17-
</SimpleForm>
18-
</Edit>
19-
)
20-
21-
*/
22-
234
import React from 'react';
245
import { Admin, Resource } from 'react-admin';
25-
import { PostList, PostEdit } from './posts'
6+
import { PostList, PostEdit, PostCreate } from './posts'
267
import { UserList } from './users'
278
import jsonServerProvider from 'ra-data-json-server';
289

2910
const dataProvider = jsonServerProvider('http://jsonplaceholder.typicode.com');
3011

3112
const App = () => (
3213
<Admin dataProvider={dataProvider} >
33-
<Resource name="posts" list={PostList} edit={PostEdit} />
14+
<Resource name="posts" list={PostList} edit={PostEdit} create={PostCreate} />
3415
<Resource name="users" list={UserList} />
3516
</Admin>
3617
)

src/posts.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react';
2-
import { List, Datagrid, TextField, ReferenceField, EditButton, Edit, SimpleForm, ReferenceInput, SelectInput, TextInput, DisabledInput, LongTextInput } from 'react-admin';
2+
import { List, Datagrid, TextField, ReferenceField, EditButton, Edit, SimpleForm, ReferenceInput, SelectInput, TextInput, DisabledInput, LongTextInput, Create } from 'react-admin';
33

44
export const PostList = props => (
55
<List {...props}>
@@ -26,3 +26,15 @@ export const PostEdit = props => (
2626
</SimpleForm>
2727
</Edit>
2828
)
29+
30+
export const PostCreate = props => (
31+
<Create {...props}>
32+
<SimpleForm>
33+
<ReferenceInput source="userId" reference="users">
34+
<SelectInput optionText="name" />
35+
</ReferenceInput>
36+
<TextInput source="title" />
37+
<LongTextInput source="body" />
38+
</SimpleForm>
39+
</Create>
40+
)

0 commit comments

Comments
 (0)