按日期筛选反应管理员查询

问题描述 投票:0回答:1

我正在使用react-adminuseGet...查询来从Rails后端收集数据。这里的主要问题是filter属性(useGetList操作中的最后一对花括号)。如何按日期过滤数据(例如仅获取上个月的交易等)

这是当前(有效的)方法:

useGet...

数据库中的所有条目均具有const { data, loading, error } = useGetList( 'transactions', { page: 1, perPage: 10000 }, { field: 'id', order: 'ASC' }, {}, ) if (loading) return <p>Loading</p> if (error) return <p>Error</p> if (!data) return null createdAt属性。

我的方法是创建一个像这样的过滤器:

updatedAt

// constraints could be dates that I can easily set beforehand { {'createdAt', desiredLowerTimeConstraint, operation: '<='}, {'createdAt', desiredUpperTimeConstraint, operation: '<='} } react-admin的filter属性非常稀少,我找不到这些对象的外观的好例子。

reactjs react-admin
1个回答
0
投票

这完全取决于您的API如何期望过滤器的外观。

例如,在documentation提供的REST API中,查询字符串参数名称的后缀JSONServer表示您想要结果“小于或等于”值:

_lte

如果您使用GET /transactions?createdAt_lte=2019-12-05 ,则可以通过在ra-data-simple-rest中传递参数来制作此请求:

filter

如果您的API的行为不同,那么您可以对const { data, loading, error } = useGetList( 'transactions', { page: 1, perPage: 10000 }, { field: 'id', order: 'ASC' }, { createdAt_lte: '2019-12-05' }, ) 使用相同的语法,并在将useGetList发送给API之前先对其进行转换。

© www.soinside.com 2019 - 2024. All rights reserved.