reactjs - How to use the property of an object as a source in the admin-on-rest? -


my friends. want add field associated resource here: https://marmelab.com/admin-on-rest/tutorial.html#relationships

but problem field id of other resource contain in object:

{ "id": 1,  ....,  user: {      id: "12313123"  } } 

what can in situation? understand can create own "filelds", how can create own "referencefield"? need "source" property contain this:

       <referencefield label="user" source="user.id" reference="users">             <textfield source="name" />         </referencefield> 

i'm not familiar admin-on-rest framework, documentation seems possibly create custom textfield relatively simply. maybe similar thing creating custom referencefield.

import 'lodash.get'; // safe access of nested data  const postuserfield = ({record}) => {    // "record" post object in example    return (       <referencefield label="user" source={ get('user.id', record) } reference="users">         <textfield source="name" />      </referencefield>    ); } 

and call

// inside other component.. <postuserfield /> 

if doesn't work, try see if overwrite record prop in custom component, access no longer nested. in contex, id point same property user.id.

const postuserfield = ({record}) => {    // "record" post object in example    // prepare record reference field, removing    // nesting    const unnesteduser = record.user;    return (       <referencefield record={ unnesteduser } label="user" source="id" reference="users">         <textfield source="name" />      </referencefield>    ); } 

actually, @ problem again.. sure need referencefield fetch user id (user.id)? because post seem have user data. solve custom textfield like:

import 'lodash.get'; // "record" still post object. since data on // post object (in user.name) , can print directly const postusername = ({record }) => <span>{get(record, 'user.name')}</span>; 

Comments

Popular posts from this blog

resizing Telegram inline keyboard -

command line - How can a Python program background itself? -

php - "cURL error 28: Resolving timed out" on Wordpress on Azure App Service on Linux -