如何在KeystoneJS中向列表中添加新字段

问题描述 投票:0回答:1

我想通过在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脚本?

谢谢

keystonejs
1个回答
0
投票

它似乎工作,但重新启动服务器时,更改不会持续。

application updates folder中的脚本用于数据导入或迁移,故意仅对给定部署应用一次。

所有文档都描述了创建新列表的过程,但没有描述如何修改现有列表。

要添加,删除或更改模型中的字段,您应该修改Keystone项目中的文件(例如:models/Post.js),然后重新启动应用程序以获取更改。

除非您想要包含关联的数据更改(例如,设置现有文档的值),否则通常无需创建相应的update脚本。

© www.soinside.com 2019 - 2024. All rights reserved.