简体   繁体   中英

Chain relationship in keystone.js

var leaves = new keystone.List('leaves');
leaves.add({
    createdBy: {
        type: Types.Relationship,
        ref: 'user-datas',
        initial: true,
        label: 'Submitted By',
    },
});

var userData = new keystone.List('user-datas');

userData.add({
    user_id: {
        type: Types.Relationship,
        ref: 'Employees',
    },
});
var Employees = new keystone.List('Employees');

Employees.add({
    name: {
        type: Types.Name,
        required: true,
        index: true,
        initial: true,
    },
});

I have 3 models/list: leaves,user-data, Employees. So when in admin panel when I want to add a leave it shows Object id of record from user-data. But is there any way to show name from Employees when entering a new leave. but the still refer to user-data?

I need to show user's name instead of the user ID as shown in the image below.

在此处输入图片说明

When you add the relationship for the leaves, you can do something like this:

         submittedBy: {type: Types.Relationship, ref: 'User', many: false},

Hope this help. If not, please post more details like the model declaration.

您可以通过使用关系来实现。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM