反应管理员。如何在单独的页面上显示用户 activity
React-admin. How to show on separate page user activity
我有什么
我的项目中几乎没有资源 -> users
和 user_activity
。
获得 user_activity 的 Edpoint 如下所示:
curl base_url/rpc/user_activity?id=user_id -H "Content-Type: application/json" -X GET
一些 React 管理代码
<Resource
name="user"
options={{ label: 'Users' }}
list={ UsersList }
create={ UsersCreate}
edit={ UsersEdit }
show={ UsersShow }
/>
<Resource name="user_activity"/>
我需要的
在编辑和显示用户页面上放置按钮 - "Activity",单击它我需要转到另一个页面并在那里显示用户 Activity 的 table 根据user_id。
我在想,为了显示来自 user_activity 资源的数据,我可以使用或新的 useQuery 挂钩,但它应该以某种方式获得 user_id 作为参数,那么如何传递它呢?据我所知,它也很有趣,它显示了由来自不同资源的密钥连接的数据,但它显示在同一组件上,我需要它在单独的页面上。
怎么做?
您认为创建页面的最佳方式是什么?使用什么组件可以从另一个页面显示 user_activity by user_id?
你可以使用 "ReferenceManyField" 吗?
我使用选项卡而不是新页面来做一些非常相似的事情。
例如:
<TabbedShowLayout>
<Tab label="activity" path="activity">
<ReferenceManyField
addLabel={false}
reference="activity"
target="user_id"
sort={{ field: 'Date', order: 'DESC' }}
>
<Datagrid>
<DateField source="Date" label="Date" showTime />
<TextField source="Type" label="Type" />
<TextField source="Result" label="Result" />
</Datagrid>
</ReferenceManyField>
</Tab>
</TabbedShowLayout>
不要忘记将 "activity" 添加到
中的资源中
我的数据提供者将其翻译成:
我有什么
我的项目中几乎没有资源 -> users
和 user_activity
。
获得 user_activity 的 Edpoint 如下所示:
curl base_url/rpc/user_activity?id=user_id -H "Content-Type: application/json" -X GET
一些 React 管理代码
<Resource
name="user"
options={{ label: 'Users' }}
list={ UsersList }
create={ UsersCreate}
edit={ UsersEdit }
show={ UsersShow }
/>
<Resource name="user_activity"/>
我需要的
在编辑和显示用户页面上放置按钮 - "Activity",单击它我需要转到另一个页面并在那里显示用户 Activity 的 table 根据user_id。 我在想,为了显示来自 user_activity 资源的数据,我可以使用或新的 useQuery 挂钩,但它应该以某种方式获得 user_id 作为参数,那么如何传递它呢?据我所知,它也很有趣,它显示了由来自不同资源的密钥连接的数据,但它显示在同一组件上,我需要它在单独的页面上。
怎么做?
您认为创建页面的最佳方式是什么?使用什么组件可以从另一个页面显示 user_activity by user_id?
你可以使用 "ReferenceManyField" 吗?
我使用选项卡而不是新页面来做一些非常相似的事情。 例如:
<TabbedShowLayout>
<Tab label="activity" path="activity">
<ReferenceManyField
addLabel={false}
reference="activity"
target="user_id"
sort={{ field: 'Date', order: 'DESC' }}
>
<Datagrid>
<DateField source="Date" label="Date" showTime />
<TextField source="Type" label="Type" />
<TextField source="Result" label="Result" />
</Datagrid>
</ReferenceManyField>
</Tab>
</TabbedShowLayout>
不要忘记将 "activity" 添加到
中的资源中我的数据提供者将其翻译成: