当我获取数据时
<ReferenceInput
source="estateId"
reference="estates"
>
<SelectInput optionText="name" />
</ReferenceInput>
对于每个类似的庄园,我都会得到答案:
{
"id": 5,
"name": "test",
"livingUnits": [
{
"id": 1,
"name": "all"
},
{
"id": 2,
"name": "1."
}
]
}
我如何访问生活单元信息以填充ReferenceArrayInput选项?
<ReferenceArrayInput
source="livingUnitIds"
>
<SelectArrayInput>
<ChipField source="name" />
</SelectArrayInput>
</ReferenceArrayInput>
答案 0 :(得分:0)
我认为您不能,我在源代码中进行了大量搜索,但没有找到一个干净的解决方案。 <ReferenceArrayInput>
需要一个带有相关资源ID的数组,然后它向dataProvider查询资源和该数组上的ID。我应用的一个解决方案是更改请求的答案,以提供一个属性,该属性是具有相关资源的ID的数组,在您的示例中,遗产的答案应类似于:
{
"id": 5,
"name": "test",
"livingUnitsIds": [1, 2]
}
之所以这样做,是因为我可以控制后端,如果那不是您的情况,则可能需要实现自定义<ReferenceInput>
或要在组件onComponentDidMount
生命周期中获取所需数据的组件方法。