有没有人有一个在 keystonejs 中为关系字段添加名称的好例子?现在它只保存一个 id,所以如果我需要在翡翠模板中显示该字段名称,我还需要查询该关系模型。理想情况下是这样的:
var keystone = require('keystone'),
Types = keystone.Field.Types;
/**
* Titles Model
* =============
*/
var Title = new keystone.List('Title');
Title.add({
name: { type: String, required: true, initial: true },
room: { type: Types.Relationship, initial: true, required: true, ref: 'Screening', addNew: false },
businessUnit: { type: Types.Relationship, initial: true, required: true, ref: 'BusinessUnit', addNew: false }
});
Title.defaultSort = '-createdAt';
Title.defaultColumns = 'name, room';
Title.register();
会这样保存:
title = {
name: 'name',
room: 3141234123442,
businessUnit: {
name: 'business name',
_id: 123412341234
}
}
如果没有示例,如果有人可以引导我完成自定义关系字段类型以从关系选择菜单中存储值和 id 的最佳实践,我可能会弄清楚。该站点将在每个集合中包含 1000 多个文档,因此我现在需要关注性能和最佳实践。