React-Admin:如何在自定义路由上点击 'save' 后重定向到指定的“列表”

React-Admin: How to redirect to a specified `list` after hitting 'save' on a custom route

我有一条自定义路线:

  <Route
    exact
    path="/assetsBulkCreate"
    component={ComponentWithPermissions(AssetsBulkCreate)}
  />

用于批量创建资源:

export const AssetsBulkCreate = ({permissions, ...props}) => {
  return (
    <Create
      resource="assets/bulkInsert"
 ...

这有效。

但是,在我们点击保存后,页面被重定向到仪表板。

我想将其重定向到资源 assets(这是不同的资源)的 list

如何做到这一点?

P.S。 redirect 道具不允许我们指定不同的资源,所以我不能在那里使用 list 作为值(它甚至不起作用,因为自定义路由没有列表)。

redirect prop 也接受一个函数。见 documentation

例如:

const redirect = (basePath, id, data) => `/author/${data.author_id}/show`;

export const PostEdit = (props) => {
    <Edit {...props}>
        <SimpleForm redirect={redirect}>
            ...
        </SimpleForm>
    </Edit>
);

您可以重定向到 list 视图。参见 documentation

export const PostCreate = (props) => {
    <Create {...props}>
        <SimpleForm redirect="list">
            ...
        </SimpleForm>
    </Edit>
);