2016-01-05 4 views
2

Я пытаюсь изменить keyStone.js проект, чтобы соответствовать моим требованиям, я имею проблемы при добавлении нового пользователя на стороне серверакак явно создать новый пользователь в KeyStone.js

var User = keystone.list('User'); 
User.add({ 
name: {first:"Abcd", 
last:"xyz" }, 
email: "[email protected]", 
password: "password", 
isAdmin: true 
}); 
User.register(); 

Но этот ISN Не создавайте нового пользователя в MongoDB, какие-нибудь идеи, что я, возможно, делаю неправильно?

ответ

4

Вы путаете определение схемы для User и создания User

Это может быть ваше определение схемы в models/User.js:

var User = keystone.list('User'); 

User.add({ 
    name: { type: Types.Name, required: true, initial: true }, 
    email: { type: Types.Email, required: true, initial: true }, 
    password: { type: Types.Password, required: true, initial: true }, 
    isAdmin: { type: Boolean }, 
}); 

User.register(); 

Затем вы можете создать пользователя, как это:

var User = keystone.list('User').model; 

var user = new User({ 
    name: { first:'Abcd', last:'xyz' }, 
    email: '[email protected]', 
    password: 'password', 
    isAdmin: true 
}); 

user.save(function (err) { 
    if (err) { 
     // handle error 
     return console.log(err); 
    } 

    // user has been saved 
    console.log(user); 
}); 
+0

Спасибо, что сработало –

Смежные вопросы