node.js - 如何向下迁移 MongoDB
问题描述
我正在使用migrate-mongo库。我需要向应用程序添加一些用户,以便我的同事可以开始处理它。我向上迁移,按预期添加用户,但 DOWN 不起作用。好吧,实际上,当我运行 DOWN 时,什么也没有发生,我也没有收到任何错误。
我的 package.json:
"migrate": "cd database && node index.js"
迁移文件本身的内容:
module.exports = {
async up(db) {
await db.collection('users').insertOne({
'email':'ps@ps.com',
'password':'$2a$10$VP6BKllje64JwyKU3.lBYumjjRQVvPsW/A5W9/XqleiDg4C1tZaB2',
'name':'Hanah',
'role': 'Content'
});
await db.collection('users').insertOne({
'email':'wex@wex.com',
'password':'$2a$10$VP6BKllje64JwyKU3.lBYumjjRQVvPsW/A5W9/XqleiDg4C1tZaB2',
'name':'Vedran',
'role': 'CustomerService'
});
},
async down(db) {
await db.collection('users').deleteOne({'email': 'ps@ps.com'});
await db.collection('users').deleteOne({'email': 'wex@wex.com'});
},
};
我已经按照作者的程序如何创建通用文件。
怎么了?
解决方案
不确定这是否有帮助,但我已使用以下语法成功删除字段:
async down(db) {
await db.collection('users').updateOne({'email': 'ps@ps.com'}, $unset: {'email': ''});
await db.collection('users').updateOne({'email': 'wex@wex.com'}, $unset: {'email': ''});
}
推荐阅读
- java - 为什么这个块在执行过程中没有被执行?
- r - 几个向量之间共享元素的交叉表
- postgresql - 如何在postgresql中按日期和时间查询
- docusignapi - 签名/初始化多个页面 - 多个签名者
- git - 如何默认将 git branch 命令结果输出到标准输出?
- vba - Microsoft Access 报表边距设置不正确,但仅当它们是从我的系统创建时
- objective-c - Zebra 打印机将 UTF-8 字符打印为两个 ASCII 字符
- wordpress - 修改 walker_comment 以显示/隐藏 comment_text
- php - Laravel 与 WordPress 在共享主机上
- python - 在 web.config 中为 IIS 网络服务器激活 conda 环境