Admin on rest 带有FunctionField的BooleanField将数字更改为Boolean

Admin on rest 带有FunctionField的BooleanField将数字更改为Boolean,admin-on-rest,Admin On Rest,我有一个问题,我相信它会帮助其他开发者。 我有一个字段是活跃的,在我的API端是布尔值,但它返回0或1,而不是真或假。 我想用它来包装,但没用。有人可以帮忙 这是我的代码: <FunctionField source="is_active" label="is_active" render={(record) => record.is_active ? true : false}> <BooleanField/> </FunctionField>

我有一个问题,我相信它会帮助其他开发者。 我有一个字段是活跃的,在我的API端是布尔值,但它返回0或1,而不是真或假。 我想用它来包装,但没用。有人可以帮忙

这是我的代码:

<FunctionField source="is_active" label="is_active" render={(record) => record.is_active ? true : false}>
  <BooleanField/>
</FunctionField>
该列仍然为空


谢谢。

我认为您误解了FunctionField组件。它渲染渲染属性的结果。您试图实现的目标是:

<FunctionField source="is_active" label="is_active" render={(record,source) => 
    <BooleanField record={{...record,is_active:!!record.is_active}} source={source}/>}/>
并与管理员联系:

<Admin dataProvider={FixMyDataFeature(dataProvider)}... />

我认为您误解了FunctionField组件。它渲染渲染属性的结果。您试图实现的目标是:

<FunctionField source="is_active" label="is_active" render={(record,source) => 
    <BooleanField record={{...record,is_active:!!record.is_active}} source={source}/>}/>
并与管理员联系:

<Admin dataProvider={FixMyDataFeature(dataProvider)}... />

这里是我的解决方案:您可以导入它并使用它来代替BooleanField

import React from 'react';
import { BooleanField } from "react-admin";

export const BooleanNumField = ({ record = {}, source}) => {
  let theRecord = {...record};

  theRecord[source + 'Num'] = !!parseInt(record[source]);

  return <BooleanField record={theRecord} source={source + 'Num'} />
}

这里是我的解决方案:您可以导入它并使用它来代替BooleanField

import React from 'react';
import { BooleanField } from "react-admin";

export const BooleanNumField = ({ record = {}, source}) => {
  let theRecord = {...record};

  theRecord[source + 'Num'] = !!parseInt(record[source]);

  return <BooleanField record={theRecord} source={source + 'Num'} />
}

谢谢你把事情说得更清楚!让我来做吧,我会回复的。谢谢你把事情说得更清楚!让我来做吧,我会回复的。