0

这是我的模型。

UserApiSchema.statics.createApi = function(user,fn){
  var instance = new UserApi();
  instance.user = user;
  instance.apiKey = "asdasdacasdasasd";
  console.log("username is " + user.username);
  instance.save(function(err){
    fn(err,instance);
  });
};

UserSchema.statics.newUser = function (email, password,username, fn) {
    var instance = new User();
    var apiInstance = new UserApi();
    instance.email = email;
    instance.password =password;
    instance.username = username;

    instance.save(function (err) {
        fn(err, instance);
    });
};

这是我的控制器-users.js:

app.post('/signup/', function(req, res) { {console.log(req.body.username); User.newUser(

            req.body.email, req.body.password,req.body.username,
            function (err, user) {
                if ((user)&&(!err)) {
                    console.log(user.username)

                    UserApi.createApi(
                            user,function(err,userapi){
                                if((!err)){
                                    res.send("APi created")
                                }
                                else{
                                    if(err.errors.apiKey){
                                        res.send(err)
                                    }
                                }


                            });
                    req.session.regenerate(function(){
                        req.session.user = user._id;
                        res.send("Success here!"); 

                    });
                } else {
                    if (err.errors.email) {
                          res.send(err) 
                          console.log(req.body.password);
                          console.log(req.body.email);
                          console.log(req.body);
                        }                           
                   if (err.errors.username) {
                      res.send(err) 
                      console.log(req.body.password);
                      console.log(req.body.email);
                      console.log(req.body);
                    }   
                }
            });


    } 
});

这个概念是,一旦用户名/密码被接受,API 密钥就会与用户名一起存储。虽然,用户名有效负载被接受,但是当我调用 UserApiSchema 来生成 api 时,没有生成这样的 api。也没有错误。

4

1 回答 1

1

可能是真正的基本...但是,您是否创建了所需的对象?

  • UserApiSchema = {};
  • UserApiSchema.statics = {};
  • UserApiSchema.statics.createApi = function(user,fn){ ...}

如果是这样……它们在一个模块中吗?您是否从模块中导出了它们?

  • 出口.userApiSchema = UserApiSchema;

您是否将它们导入到 controller-users.js 中?

  • var userApiSchema = require('./UserApiSchema.js');
于 2012-10-26T13:54:35.130 回答