仿照别人写了个Model如下
import { Model } from 'mongorito';
import bcrypt from './bcrypt';
class UserModel extends Model {
configure() {
this.privateFields = ['password', 'created_at', 'updated_at']
this.before('save', 'validateFields');
this.before('save', 'encryptPassword');
}
* validateFields(next) {
const username = this.get('username');
const password = this.get('password');
if (!username) {
throw new Error('No username provided');
}
if (!password) {
throw new Error('No password provided');
}
const user = yield UserModel.where('username', username).find();
if (user.length > 0) {
throw new Error('User already exists');
}
yield next;
}
* encryptPassword(next) {
const salt = yield bcrypt.genSalt(15);
this.password = yield bcrypt.hash(this.password, salt);
yield next;
}
}
let user = new UserModel({
username: 'admin',
password: 'password'
})
yield user.save();
无法保存到mongodb里面 如果把两个中间件去掉倒是可以 ,,求助