2015-03-29 3 views
1

У меня есть этот код, который должен работать. У меня почти идентичный код в другом месте, который работает. Однако user.save не запускается, а также User.update. Я понимаю, что здесь есть много постороннего кода, я переместил много вещей, пытаясь понять, почему ни сохранение, ни обновление не работают (и да, я знаю, что мне нужен только один, я пробовал оба индивидуально уже, просто сделал это таким образом, чтобы проиллюстрировать).Обновление sailsjs не работает

User.findOneByEmail(req.param('email'), function foundUser (err, user) { 
       if (err) return next(err); 
E.l(user); 
       if (!user) { 
        var noAccountError = [{name: 'noAccount', message: 'The email ' + req.param('email') + ' was not found.'}] 
        req.session.flash = { 
         err: noAccountError 
        } 
        res.redirect('/user/forgot'); 
        return; 
       } 

       var userObj = { 
        lostpasswordtoken: Helper.Guid() 
       } 
       user["lostpasswordtoken"] = userObj.lostpasswordtoken; 

       user.save(function(err){ 
        if (err) { 
         E.l(err); 
        } else { 
         E.l("save workd"); 
        } 
       }); 

       User.update(user.id, userObj, function userTokenUpdated (err) { 
        E.l(user['id']); 
        E.l(JSON.stringify(userObj)); 
        if (err) { 
         return res.redirect('/user/forgot'); 
        } 
E.l("here6"); 

       }); 

       MailService.SendMail({ to: user['email'], subject: 'Password Reset', 
        body: 'Click on http://' + req.headers.host + '/user/validateforgot?e=' + user['email'] + '&t=' + userObj['lostpasswordtoken']}); 

        res.view();    
       E.l("here8"); 
      }); 
E.l("here9"); 

ответ

1

я не знаю обозначения вы использовали, я использую это в целом:

User.update(user.id, userObj).exec(function(err, user) 
{ 
    if(err)//error 
    .... 
}); 
+0

Есть два основных способа вызова функции ... User.update (идентификатор, опции, обратный вызов) и User.update (id, options) .exec (обратный вызов). Я использовал оба кода, как было разумно в то время. Тем не менее, я просто попробовал это, потому что я в отчаянии и, как ожидалось, это не вызвало обновление. Спасибо! – iolympian

+0

И у вас нет ошибок на консоли? Возможно, вы внесли некоторые изменения в базу данных и должны их очистить? – jaumard

+0

jaumard, мне интересно, так ли это. Это очень странно. У меня нет ошибок, у меня есть моя настройка конфигурации для изменения. Я знаю, что у меня есть доступ, так как я могу создать нового пользователя, поэтому я подтвердил доступ к таблице базы данных. Я добавил все эти консольные журналы, и они только те, которые не срабатывают, находятся внутри обновления. Я знаю, что я делаю это правильно, но что-то где-то не работает. – iolympian

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