reactjs - 在 react-admin 中创建自定义表单
问题描述
我正在使用Edit
和SimpleForm
来自react-admin
. 如何创建自定义表单以允许自定义action
和type
提交?
应用程序.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;
有没有其他方法可以处理它?
解决方案
这是您的dataProvider
in react-admin
( restClient
in admin-on-rest
) 的工作。您必须创建一个自定义:
- 对于
react-admin
:https://marmelab.com/react-admin/DataProviders.html#writing-your-own-data-provider - 对于
admin-on-rest
:https://marmelab.com/admin-on-rest/RestClients.html#writing-your-own-rest-client
您必须检查资源和类型,然后自己构建获取选项。
推荐阅读
- javascript - 悬停/鼠标进入/鼠标离开菜单项
- reactjs - Ag-Grid,工具提示问题 - 如果将空值更改为某个值,则该单元格不会显示工具提示
- python - Python中的unshuffle函数如何?
- python - 如何根据另一个数组对列表进行排序以在python中生成一个新数组
- oauth-2.0 - 如何使用承载令牌 Wso2 EI 调用 API?
- google-bigquery - 基于 BigQuery 中日期范围的查询返回错误
- google-sheets - 正则表达式匹配返回所有数字
- linux - 如何扩展 Oracle VM 模板 Oracle 数据库 19c dev/sdb1 存储空间
- android - 使用房间关系时如何通过查询访问子实体的列?
- twitter-bootstrap - 从 Txt 文件更新 Flask 进度条