我有一个表“ fos_user”和“ version”,我想显示“ 9.0.1.A”而不是“ / version / 1”。
=> fos_user https://i.imgur.com/C8f0qor.png
=>版本 https://i.imgur.com/HFSKIdz.png
是否可以连接“版本”表的字段以在源代码中显示它,就像这样? https://i.imgur.com/rxJBmtp.png
因为它将阻止我在“版本”表中创建新字段。
最诚挚的问候,
答案 0 :(得分:0)
反应管理员|如何在ReferenceField中连接源?
答案:
<ReferenceField label="Version" source="version" reference="versions">
<FunctionField render={version => `${version.major}.${version.minor}.${version.patch}.${version.letter}`} />
</ReferenceField>
答案 1 :(得分:0)
我需要图像的前缀。不幸的是,提供的解决方案对我不起作用...一开始我尝试了
<ImageField source="prefix + contentUrl"/>
以及以上解决方案...
最终我找到了以下解决方案:
const MyImageField = ({source, record = {}, ...rest}) => {
let clonedRecord = JSON.parse(JSON.stringify(record));
clonedRecord[source] = process.env.REACT_APP_BASE_PATH + clonedRecord[source];
return <ImageField source={source} record={clonedRecord} {...rest}/>;
};
export const ImageList = props => (
<List {...props}>
<Datagrid rowClick="edit">
<MyImageField source="contentUrl"></MyImageField>
</Datagrid>
</List>
);
const dataProvider = baseHydraDataProvider(entrypoint, fetchHydra, apiDocumentationParser);
export default () => (
<HydraAdmin dataProvider={dataProvider} authProvider={authProvider} entrypoint={entrypoint}>
<ResourceGuesser name={"media_objects"} list={ImageList}/>
</HydraAdmin>
);
以某种方式我需要一个克隆,因为该函数被多次调用(->前缀被添加了x次)。
我将其与API Platform结合使用。
另请参阅:
https://marmelab.com/react-admin/Fields.html#writing-your-own-field-component