Не могу использовать ReferenceInput в администрировании на отдыхе

Вот ссылка: Admin-on-Rest

в app.js:

<Resource name="customers" list={CustomerList} icon={UserIcon} edit={CustomerEdit} create={CustomerCreate}/>

в customer.js:

  <TextInput source="firstname" />
  <ReferenceInput label="Partner" source="id" reference="partners" >
      <AutocompleteInput optionText="name" />
  </ReferenceInput>
  <TextInput source="email" />

Проблема автозаполнения не показана, но я проверяю данные журнала, полученные из конечной точки / партнеров API

И если я поменяю ссылку на ссылку = "клиенты", данные и автозаполнение показываются.

Помогите, пожалуйста??

3 ответа

Тебе нужен другой <Resource> для отношений даже пустых

<Resource name="customers" list={CustomerList} icon={UserIcon} edit={CustomerEdit} create={CustomerCreate}/>
<Resource name="partners" />

Это хорошо документировано для <ReferenceField> (см. примечание), возможно, ему нужна такая же записка для <ReferenceInput>,

Вы <ReferenceInput reference="..."> должен соответствовать <Resource name="..."> чтобы это работало. Так вот почему reference="customers" работал на тебя.

Если вы хотите получить данные из customers конечные точки, но вы хотите label быть Partner Вы можете указать это как label атрибут на вашем ReferenceInput компонент, например <ReferenceInput label="Partner" ...>,

Возможно, проблема в том, как вы импортируете свой объект ReferenceInput. У меня была та же проблема при создании моего приложения, и я понятия не имел, в чем проблема. Проверьте строку импорта и, если она выглядит так:

import {ReferenceInput} from "../../src/mui/input/ReferenceInput";

затем измените его так, чтобы он выглядел так:

import ReferenceInput from '../../src/mui/input/ReferenceInput';

Надеюсь, что это поможет вам!

Другие вопросы по тегам