2017-09-29 66 views
0

我有一个用户资源,其中许多其他资源引用。
所以我想创建一个UserResourceInput:管理静态定制输入

import React from 'react'; 
import {ReferenceInput, SelectInput} from 'admin-on-rest'; 


const UserReferenceInput = (props) => (
    <ReferenceInput reference="user" {...props}> 
     <SelectInput optionText="name"/> 
    </ReferenceInput> 
); 
UserReferenceInput.defaultProps = { 
    source: 'userId', 
    addLabel: true, 
    label: 'User' 
}; 

export default UserReferenceInput; 

,并用它在简单的形式是这样的:

ProductCreate = (props) => (
    <Create {...props}> 
     <SimpleForm> 
      <TextInput source="title" /> 
      <NumberInput source="price" /> 
      <UserReferenceInput /> 
     </SimpleForm> 
    </Create> 
); 

但我得到这个错误: enter image description here

+0

如何从输入中获取“道具”? – Panther

回答

1

你缺少source道具上的ReferenceInput。因此,它找不到它的价值。您可以直接在UserReferenceInput之内定义它,或者将它作为支柱传递给表格中的UserReferenceInput

编辑

不要使用在ReferenceInputaddLabel道具,它不支持它。相反,将其应用于SelectInput孩子。

+0

来源在defaultProps中。 –

+0

对,应该仔细阅读...... – Gildas

+1

谢谢,但是'addField:true'也需要它的工作。 –