我想通过在Post模式中添加一个布尔“frontPage”字段来扩展KeystoneJS中的Blog,我想用它来显示主页上的选定帖子。
我想出了我放在更新文件夹中的代码:
var keystone = require('keystone');
var async = require('async');
exports = module.exports = function (done) {
let post = keystone.list('Post');
post.add({
frontPage: Boolean
});
done();
};
它似乎工作,但重新启动服务器时,更改不会持续存在。所有文档都描述了创建新列表的过程,但没有描述如何修改现有列表。还尝试添加一个post.register()
at结束但没有运气。
是否有一个函数来持久化新模式,或者我应该在Keystone之外编写一个shell脚本?
谢谢
它似乎工作,但重新启动服务器时,更改不会持续。
application updates
folder中的脚本用于数据导入或迁移,故意仅对给定部署应用一次。
所有文档都描述了创建新列表的过程,但没有描述如何修改现有列表。
要添加,删除或更改模型中的字段,您应该修改Keystone项目中的文件(例如:models/Post.js
),然后重新启动应用程序以获取更改。
除非您想要包含关联的数据更改(例如,设置现有文档的值),否则通常无需创建相应的update
脚本。