在CMS(keystone JS)中添加新的导航选项卡
我是KeystoneJS中的新成员,并且正试图在管理面板中添加新的导航选项卡,所以对于我在keystone.js文件中进行的更改并添加在代码所需的导航标签在CMS(keystone JS)中添加新的导航选项卡
“keystone.set( 'NAV',{ .... });”
但使得在它的变化,然后运行该代码之后我得到错误未知keystone列表“newTab”
我不知道你的模型的名称,但正确的语法是:
keystone.set('nav', {
'<tab-name>': '<modelname>'
});
何处标签名称可以是任何东西,MODELNAME应该是准确的(区分大小写!)同名作为您的型号名称或小写字母的复数版本。
例如:
你的模型:Artwork.js
var Artwork = new keystone.List('Artwork', { ... });
您的导航定义:
keystone.set('nav', {
'art': 'Artwork'
});
OR
keystone.set('nav', {
'art': 'artworks'
});
我更新到小写的复数版本的模型,它修复了错误,但我很好奇它为什么必须是复数版本? @JasperV –
@Yao:据我所知,这是一个Mongoose的东西:https://stackoverflow.com/questions/10547118/why-does-mongoose-always-add-an-s-to-the-end-我的集合名称 Keystone也支持它...虽然您也可以覆盖集合名称,请在github页面上查看此评论:https://github.com/keystonejs/keystone/issues/292#issuecomment -40897315 – JasperV
这是为什么没有评论标记?看来这些管理员定制问题大部分都是。目前还没有明确的答案,所以我不认为这个问题应该受到惩罚......我的意思是说,正确的语法是在文档中,但显然有些用户找不到它。 –