有没有办法强制 Show 使用 Datagrid?
Is there a way to force Show to use a Datagrid?
我正在寻找一种方法让 Show 能够在显示页面上使用 Datagrid。我希望能够单击显示按钮,当显示页面出现时,我希望能够获取数据并使用 Datagrid 或类似的东西制作另一个网格。知道这是怎么做到的吗?
似乎显示页面需要 1 条记录并呈现它。在显示页面上,您可以放置与当前相关的记录。例如 news
可以与一个 project
关联,而一个 project
可以关联多个 news
。下面的代码从 api 获取所有相关的 news
并将其呈现为 table。希望对你有帮助
export const ProjectShow = ({ ...props }) => (
<Show title={<ProjectTitle />} {...props}>
<SimpleShowLayout>
<ReferenceManyField label="News" reference="news" target="project_id">
<Datagrid>
<TextField source="id" />
<TextField source="title" />
<DateField source="created_at" showTime />
<DateField source="updated_at" showTime />
<EditButton />
</Datagrid>
</ReferenceManyField>
</SimpleShowLayout>
</Show>
);
不记得在 App.js 行中的位置:
<Resource name="projects" ...another actions... show={ProjectShow} />
我正在寻找一种方法让 Show 能够在显示页面上使用 Datagrid。我希望能够单击显示按钮,当显示页面出现时,我希望能够获取数据并使用 Datagrid 或类似的东西制作另一个网格。知道这是怎么做到的吗?
似乎显示页面需要 1 条记录并呈现它。在显示页面上,您可以放置与当前相关的记录。例如 news
可以与一个 project
关联,而一个 project
可以关联多个 news
。下面的代码从 api 获取所有相关的 news
并将其呈现为 table。希望对你有帮助
export const ProjectShow = ({ ...props }) => (
<Show title={<ProjectTitle />} {...props}>
<SimpleShowLayout>
<ReferenceManyField label="News" reference="news" target="project_id">
<Datagrid>
<TextField source="id" />
<TextField source="title" />
<DateField source="created_at" showTime />
<DateField source="updated_at" showTime />
<EditButton />
</Datagrid>
</ReferenceManyField>
</SimpleShowLayout>
</Show>
);
不记得在 App.js 行中的位置:
<Resource name="projects" ...another actions... show={ProjectShow} />