将React-Admin ReferenceInput与SelectInput绑定以在DOM上呈现

时间:2018-09-02 10:02:46

标签: react-admin

我有两个端点

  

api /指令   api /主题

在我的服务器上,模型指令具有一个称为主题的参考字段。

在我的react-admin前端,我想创建(CRUD)一个新的Instruction实例。

this tutorial之后,我实现了如下的InstructionCreate

export const InstructionCreate = (props) => (
    <Create  title="New Instruction"{...props}>
        <SimpleForm>
             <ReferenceInput label="Subject" source="subject" reference="subject/">
                <SelectInput optionText="name" />
            </ReferenceInput>   
        </SimpleForm>
    </Create>
  

当我从chrome控制台的networktab渲染我的Create组件时,可以看到返回的主题对象列表。

     

列表具有两个对象(从服务器中拉出),并且这些对象具有属性“名称”

但是,我收到控制台错误

  

未捕获的TypeError:无法读取未定义的属性'data'

     

上述错误发生在

万一需要我的app.js,我可以从中成功对api /主题端点进行CRUD

const App = () => (    
     <Admin 
         dataProvider={dataProvider}  

         <Resource name="subject" title="Subjects" list={SubjectList} create={SubjectCreate} edit={SubjectEdit}  icon={GroupIcon}/>
         <Resource name="instruction" title="Instructions" list={InstructionList} edit={InstructionEdit} create={InstructionCreate} icon={InstructionIcon}/>

     </Admin>
     );
  

获取api /主题-返回词典列表

[     {         “ id”:2         “名称”:“主题2”         },     {         “ id”:1         “名称”:“主题1”     } ]

1 个答案:

答案 0 :(得分:0)

我能够解决这个问题。 我的错误是在参考变量var

上包含尾随“ /”
  

更改了此行

<ReferenceInput label="Subject" source="subject" reference="subject/">
  

<ReferenceInput label="Subject" source="subject" reference="subject">