小编Abh*_*ain的帖子

如何使用 mongoose 在 mongoDB 中手动设置 createdAt 时间戳?

我正在尝试通过向所有先前缺少时间戳的行添加时间戳来迁移我的数据库。我已经使用 _id 计算了 createdAt 时间戳,但我无法设置时间戳。我在这里做错了什么?有人可以帮忙吗?

    let Question = db.model('Question');

    let items = await Question.findWithDeleted();

    let processedIds = items.map((q) => q._id);
    processedIds.forEach(function (id) {

        const timestamp = id.getTimestamp();

        // const date = new Date(parseInt(timestamp, 16) * 1000);
        // echo(timestamp)
        Question.update({ "_id": id }, { "$set": { createdAt: timestamp } }, (h) => {
            console.log(h);
        });

    });
Run Code Online (Sandbox Code Playgroud)

这是模型:

    const 问题 = 新架构({
        “类型”: {
            类型:字符串,
            修剪:真实,
            枚举:Object.values(questionTypes),
            required: '问题类型是必需的'
        },
        “文本”: {
            类型:字符串,
            要求:真实
        },
        "desc": NotRequiredStringSchema,
        “选项”: [{
            “id”:对象ID,
            “名称”:NotRequiredStringSchema,
            "helperText": …

mongoose mongodb node.js

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

mongodb ×1

mongoose ×1

node.js ×1