如何将列表行为添加到 ReferenceManyField?
How to add List behavior to ReferenceManyField?
我有一个包含 6k 个与资源相关的条目的列表。
我希望能够在 TabbedForm/FormTab 中列出、搜索和分页它们。 ReferenceManyField 显示的条目数量有限。
扩展 ReferenceManyField 或改用 List 的推荐方法是什么?
您可以使用 DataGrid 组件来处理大量条目。我认为您可能对 List 感到困惑。 List 仅获取记录,实际呈现由 DataGrid 完成。
ReferenceManyField 接受过滤器、排序等参数,您可以使用这些参数来控制从 API.
中获取的记录数
根据这两个问题:https://github.com/marmelab/admin-on-rest/issues/998 and https://github.com/marmelab/admin-on-rest/issues/561 你不能在 ReferenceManyField
中使用 List
,建议的方法是使用一个按钮将你重定向到相关的 [=12] =] 具有适当过滤器的组件。
示例:
class LinkToRelatedReviews extends React.Component {
render() {
return (<FlatButton
primary
label={ translate("Full list of reviews by user") }
icon={<ReviewsIcon />}
containerElement={
<Link to={{
pathname: '/reviews',
search: stringify({ filter: JSON.stringify({ userId: [this.props.params.id] }), page: 1 }),
}}
/>}
/>)
}
}
export default LinkToRelatedReviews;
类似的东西可以放在 UsersShow 组件中
<LinkToRelatedReviews params={props.match.params}/>
在 DataGrid
下不提供分页,但可以为您获取一些结果。
您还可以通过导航至:https://marmelab.com/admin-on-rest-demo/#/segments 并单击“客户”来查看它的运行情况。这会将您重定向到按特定细分筛选的 CustomersList。
我有一个包含 6k 个与资源相关的条目的列表。
我希望能够在 TabbedForm/FormTab 中列出、搜索和分页它们。 ReferenceManyField 显示的条目数量有限。
扩展 ReferenceManyField 或改用 List 的推荐方法是什么?
您可以使用 DataGrid 组件来处理大量条目。我认为您可能对 List 感到困惑。 List 仅获取记录,实际呈现由 DataGrid 完成。
ReferenceManyField 接受过滤器、排序等参数,您可以使用这些参数来控制从 API.
中获取的记录数根据这两个问题:https://github.com/marmelab/admin-on-rest/issues/998 and https://github.com/marmelab/admin-on-rest/issues/561 你不能在 ReferenceManyField
中使用 List
,建议的方法是使用一个按钮将你重定向到相关的 [=12] =] 具有适当过滤器的组件。
示例:
class LinkToRelatedReviews extends React.Component {
render() {
return (<FlatButton
primary
label={ translate("Full list of reviews by user") }
icon={<ReviewsIcon />}
containerElement={
<Link to={{
pathname: '/reviews',
search: stringify({ filter: JSON.stringify({ userId: [this.props.params.id] }), page: 1 }),
}}
/>}
/>)
}
}
export default LinkToRelatedReviews;
类似的东西可以放在 UsersShow 组件中
<LinkToRelatedReviews params={props.match.params}/>
在 DataGrid
下不提供分页,但可以为您获取一些结果。
您还可以通过导航至:https://marmelab.com/admin-on-rest-demo/#/segments 并单击“客户”来查看它的运行情况。这会将您重定向到按特定细分筛选的 CustomersList。