如何解决React admin 导入按钮referenceManyField?
此导入将创建与另一条记录相关的记录。例如,我有一份属于公司的合同清单。
我看到了这个仓库:https://github.com/benwinding/react-admin-import-csv
我想知道 referenceManyField 是否有类似的东西。
解决方法
我找到了一个解决方案,以防有人感兴趣。
我没有使用 ReferenceManyField,而是在 Show 组件中使用了 List。
为了能够做到这一点,我必须覆盖列表的道具以指定我想要引用的资源。
我还必须将显示项目 id 作为列表组件的 prop 传递并按 id 过滤列表。
let companyId = '';
const ListActions = (props) => {
const { className } = props;
return (
<TopToolbar className={className}>
<ImportButton {...props} />
</TopToolbar>
);
};
export const ContractRow = ({ contractCompanyId }) => {
companyId = contractCompanyId;
const fakeProps: ListProps = {
basePath: '/contracts',hasCreate: false,hasEdit: false,hasList: true,hasShow: false,location: { pathname: '/',search: '',hash: '',state: undefined },match: { path: '/',url: '/',isExact: true,params: {} },options: {},permissions: null,resource: 'contracts',};
return (
<List
{...fakeProps}
filter={{ _company_id: contractCompanyId }}
actions={<ListActions />}
>
<Datagrid className={classes.insideTable}>
<TextField source="name" />
</Datagrid>
</List>
);
};
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。