我正在一个项目中,我只需要从下拉列表中的表格显示中获取唯一的数据。我怎样才能做到这一点?我正在使用'''hasura-graphql'''数据提供程序。那么如何才能从特定列中仅获取不同的数据?
提前感谢。
我认为通过将默认的“ distinct_on”过滤器与列名作为值进行匹配即可。另外,hasura建议仅根据此列进行排序,因此我设置了默认排序,您需要将sortable = {false}添加到除唯一字段之外的所有其他字段:
<List
{...props}
filter={{distinct_on: "yourDistinctColumn"}}
sort={{field: "yourDistinctColumn", order: "ASC"}}//or "DESC", your choice
>
<Datagrid>
<TextField source="yourDistinctColumn"/>
<TextField source="nonDistinctColumns" sortable={false}/>
</Datagrid>
</List>
https://hasura.io/docs/1.0/graphql/manual/queries/distinct-queries.html
https://marmelab.com/react-admin/List.html#permanent-filter
https://marmelab.com/react-admin/List.html#default-sort-field