我有两个简单的模式:
PresentationType:
var keystone = require('keystone');
var PresentationType = new keystone.List('PresentationType', {
autokey: { from: 'name', path: 'key', unique: true },
});
PresentationType.add({
name: { type: String, required: true },
t1: { type: Boolean },
t2: { type: Boolean },
});
PresentationType.relationship({ ref: 'StaticPage', path: 'pages', refPath: 'presentationType' });
PresentationType.register();
静态页面:
var keystone = require('keystone');
var Types = keystone.Field.Types;
var StaticPage = new keystone.List('StaticPage', {
map: { name: 'title' },
autokey: { path: 'slug', from: 'title', unique: true },
drilldown: 'presentationType',
});
StaticPage.add({
title: { type: String, required: true },
presentationType: { type: Types.Relationship, ref: 'PresentationType', many: false },
text1: { type: String, dependsOn: { presentationType.t1: true } },
text2: { type: String, dependsOn: { presentationType.t2: true } },
});
StaticPage.defaultColumns = 'title';
StaticPage.register();
首先,我创建一个具有布尔属性text1和text2
的表示类型其次,当我创建一个页面并指定它的表示类型时,我希望能够根据表示类型boolean显示某些字段。
到目前为止,我似乎无法找到答案。
答案 0 :(得分:1)
dependsOn
属性不能在关系字段中使用;该领域将不断需要填充这种关系。模型中的dependsOn
只能在同一模型的其他静态字段中使用(而不能在不同的模型中使用。)