0
RestifyをSQLite3データベースに使用しています。これは1が再びすべての属性に合格する必要があります動作するためにはPut Restage + SQLite3の特定のフィールドのみを更新
server.put('/users/:userid', function(req, res, next) {
bcrypt.hash(req.body.password, 10, function(err, hash) {
if (err) {
res.send(err);
} else {
db.run('UPDATE users SET username = ?, first_name = ?, last_name = ?, email = ?, password = ? WHERE id = ?', req.body.username, req.body.first_name, req.body.last_name, req.body.email, hash, req.params.userid, function(err) {
if (err) {
res.send(err);
} else {
res.json({ message:'Successfully updated user'});
}
});
}
});
next();
});
:今のところ、これは私が私のput
方法のために持っているものである
{
"username": "greg",
"first_name": "Greg",
"last_name": "Davis",
"email": "[email protected]",
"password": "password"
}
のみ、電子メールならば明らかにこれは冗長です変更する必要があります。次のコードを渡すだけで充分であるように、コードを変更するにはどうすればよいですか?
{
"email": "[email protected]",
}
私は大丈夫新しいパスワードが指定された場合には、より複雑なように、チェックするためにいくつかの追加のロジックに追加することが、すべて単一のフィールドのロジックに追加していが、過剰なようです。