javascript – KeystoneJS – 创建新项目会引发重复键错误

我见过一些与此相关的类似问题,但没有找到答案.

我正在尝试在我的Keystone项目中创建一个类似于帖子的图库,其中将有一个图库列表,其中包含一组选定图像的图库:

var keystone = require('keystone'),
    Types = keystone.Field.Types;

/**
 * gallery Model
 * =============
 */

var gallery = new keystone.List('gallery', {
    map: { name: 'name' },
    autokey: { path: 'slug', from: 'name', unique: true }
});

gallery.add({
    name: { type: String, required: true},
    published: {type: Types.Select, options: 'yes, no', default: 'no', index: true},
    publishedDate: { type: Types.Date, index: true, dependsOn: { published: 'yes' } },
    description: { type: String },
    heroImage : { type: Types.Relationship, ref: 'Image' },
    images : { type: Types.Relationship, ref: 'Image', many: true }
});

gallery.defaultColumns = 'title, published|20%, publishedDate|20%';
gallery.register();

我能够成功创建一个库 – 但任何后续的画廊都会抛出错误

There was an error saving your changes: insertDocument :: caused by ::
11000 E11000 duplicate key error index: site-name.galleries.$key_1 dup
key: { : null } (MongoError)

我不知道我需要改变这个模型以允许我的画廊中的独特slu to直接链接到等等.

解决方法:

从MongoDB中完全删除模型并重新启动.我通常在使用先前已定义的索引更改模型时看到此错误

相关文章

MongoTemplate 是Spring Data MongoDB 中的一个核心类,为 S...
笔者今天要分享的是一个项目重构过程中如何将数据库选型由原...
mongodb/mongoTemplate.upsert批量插入更新数据的实现
进入官网下载官网安装点击next勾选同意,点击next点击custom...
头歌 MongoDB实验——数据库基本操作
期末考试复习总结