나는 처음으로 사용하는 Geddy js 프레임 워크를 사용하는 프로젝트에 참여하고 있습니다. 현재 사용자를위한 모델 내부에서 create 메서드를 수정하려고합니다. 에 관계없이 '저장'에 if (user.isValid()) { user.password = cryptPass(user.password); user.suburb = ""; user.state = ""; user.postcode = ""; }
Geddy Save User
수익금 :
this.create = function (req, resp, params) {
var self = this
, user = geddy.model.User.create(params);
//need to ensure that the user agrees with the terms and conditions.
// Non-blocking uniqueness checks are hard
geddy.model.User.first({username: user.username}, function(err, data) {
if (data) {
params.errors = {
username: 'This username is already in use.'
};
//self.transfer('add');
}
else {
if (user.isValid()) {
user.password = cryptPass(user.password);
user.suburb = "";
user.state = "";
user.postcode = "";
}
user.save(function(err, data) {
if (err) {
params.errors = err;
self.transfer('add');
}
else {
// setup e-mail data with unicode symbols
var mailOptions = {
from: "App ✔ <[email protected]>", // sender address
to: user.email, // list of receivers
subject: user.username + " Thank you for Signing Up ✔", // Subject line
text: "Please log in and start shopping! ✔", // plaintext body
html: "<b>Please log in and start shopping!✔</b>" // html body
}
smtpTransport.sendMail(mailOptions, function(error, response){
if(error){
console.log(error);
}else{
console.log("Message sent: " + response.message);
}
// if you don't want to use this transport object anymore, uncomment following line
smtpTransport.close(); // shut down the connection pool, no more messages
});
self.redirect({controller: self.name});
}
});
}
});
};
당신이 코드를 보면 소위 사용자가과 같이 유효한지 볼 수있는 검사가 분명히 존재한다 : 여기에 아래의 코드는 사용자의 유효 여부. 왜 코드가 이런 식으로 생각하고 있습니까? 그것은 무의미하게 들린다. 프로젝트에 참여한 원 개발자에게 프로젝트에 대해 물었고 프로젝트를 만들 때이 모델이 생성되었다고 말했습니다.
그래서 혼란스러운 상태가되면 왜 누군가가 저에게 save 메소드가 if 문 외부에 있는지 왜 말해 줄 수 있습니까? Geddy의 원래 제작자가 의도 한 것입니까? 아니면 정말로 무의미한 것이고 그것을 바꾸어야합니까?
감사합니다.
'user.isValid'의 기능은 무엇입니까? 에러를 반환하기 전에'user.save'가 평가하는 속성을 설정할 수 있습니다. 아니면 항상 절약 할 수있는 디자인 일 수 있습니다. 확실히 이상하게 보입니다. 그러나 유효하거나 유효하지 않은 사용자에게 예상대로 작동합니까? –
분명히 그것은 모델 및 그 속성을 확인하는 Geddy의 방법입니다. – koramaiku
미안하지만, 나는 geddy에 익숙하지 않습니다. 그러나 사용자가 유효하지 않은 경우 오류를 반환하고자하는 것처럼 보입니다. –