【发布时间】:2017-06-23 15:12:58
【问题描述】:
我正在为我的 Meteor 应用程序编写重置数据方法,以擦除数据库、创建用户、为该用户生成一些假数据等。我正在使用 xolvio:cleaner 和帐户声明服务器端方法包来做到这一点:
import {Accounts} from 'meteor/accounts-base';
import {resetDatabase} from 'meteor/xolvio:cleaner';
Meteor.methods({
// ..
'resetData':()=> {
resetDatabase(null, ()=>{
Accounts.onCreateUser((options, user) => console.log(user));
Accounts.createUser({
username: 'bob',
email: 'bob@kaya.com',
password: 'rastamanvibration',
profile: {
first_name: 'Bob',
last_name: 'Marley'
}
});
});
}
});
这对我来说似乎很简单,但我收到以下错误:
Exception while invoking method 'resetData' Error: insert requires an argument
W20170622-23:28:16.817(-7)? (STDERR) at [object Object].insert (packages/mongo/collection.js:468:11)
W20170622-23:28:16.819(-7)? (STDERR) at [object Object]._.each.Mongo.Collection.(anonymous function) [as insert] (packages/aldeed_collection2-core.js:232:19)
W20170622-23:28:16.820(-7)? (STDERR) at AccountsServer.meteorInstall.node_modules.meteor.accounts-base.accounts_server.js.Ap.insertUserDoc (packages/accounts-base/accounts_server.js:1328:25)
W20170622-23:28:16.821(-7)? (STDERR) at meteorInstall.node_modules.meteor.accounts-password.password_server.js.createUser (packages/accounts-password/password_server.js:1050:25)
W20170622-23:28:16.822(-7)? (STDERR) at AccountsServer.meteorInstall.node_modules.meteor.accounts-password.password_server.js.Accounts.createUser (packages/accounts-password/password_server.js:1119:10)
W20170622-23:28:16.823(-7)?
...
【问题讨论】:
-
您是否将简单的模式绑定到 Meteor 用户?此外,这个包声明它只能在
debugOnlyenveronment 中工作 -
我没有为 Meteor 用户创建一个简单的模式,看起来我不需要。在运行流星调试时也会发生这种情况......
-
错误实际上是在 Accounts.onCreatedUser 回调中没有返回用户! woopsie
标签: javascript meteor meteor-accounts