首页 > 解决方案 > 在 react-admin 中创建自定义表单

问题描述

我正在使用EditSimpleForm来自react-admin. 如何创建自定义表单以允许自定义actiontype提交?

应用程序.js

<Resource name="category" list={CategoryList} edit={CategoryEdit}  />

index.js

<Edit actions={<CategoryEditActions />} title={<CategoryTitle />} {...props} >
    <SimpleForm>
      <DisabledInput source="id" />
      <DisabledInput source="code" />
      <TextInput source="name" />
   </SimpleForm>

这里的 api 调用将/category/:categoryId带有PUT请求。我想将 url 修改为/category/:categoryId/test使用方法 as POST。有没有办法自定义这个?

我已经在我的 CustomDataProvider 中处理了这个 -

 case UPDATE:
             if(resource === 'category'){
                    options.method = 'POST';
                    url = `${apiUrl}/${resource}/${params.id}/test`;
                } else {
                    options.method = 'PUT';
                    url = `${apiUrl}/${resource}/${params.id}`;
                }
                break;

有没有其他方法可以处理它?

标签: reactjsadmin-on-restreact-admin

解决方案


这是您的dataProviderin react-admin( restClientin admin-on-rest) 的工作。您必须创建一个自定义:

您必须检查资源和类型,然后自己构建获取选项。


推荐阅读