我是KeystoneJS中的新成員,並且正試圖在管理面板中添加新的導航選項卡,所以對於我在keystone.js文件中進行的更改並添加在代碼所需的導航標籤在CMS(keystone JS)中添加新的導航選項卡
「keystone.set( 'NAV',{ .... });」
但使得在它的變化,然後運行該代碼之後我得到錯誤未知keystone列表「newTab」
我是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
這是爲什麼沒有評論標記?看來這些管理員定製問題大部分都是。目前還沒有明確的答案,所以我不認爲這個問題應該受到懲罰......我的意思是說,正確的語法是在文檔中,但顯然有些用戶找不到它。 –