0
평균 스택 개발에 손이 있습니다. 내 요구 사항이 기능별로 게시되는 위치에 다소 달라 붙어 있습니다. 사용자가 분류 된 항목을 추가/업데이트/삭제하는 간단한 분류 된 광고 앱을 만들려고합니다. 나는이 모든 것을 할 수는 있지만 로그인 한 사람을 추가하는 특정 사용자의 이름을 표시해야합니다. 온라인에서 연구했지만 해결책을 얻을 수 없었습니다. (가) 분류 게시하면서다른 스키마의 사용자 세부 정보 얻기 [mongoose]
내 스키마
router.route('/classifieds')
.post(function(req, res) {
var classified = new Classified(req.body);
classified.save(function(err, classified) {
if (err)
res.send(err);
res.json(classified);
});
})
.get(function(req, res) {
Classified.find(function(err, classifieds) {
if (err)
res.send(err);
res.json(classifieds);
});
});
router.route('/register')
.post(function(req, res) {
if (!req.body.username || !req.body.password || !req.body.email || !req.body.firstName || !req.body.lastName) {
return res.status(400).json({message: 'Please fill all the fields!'});
};
var user = new User(req.body);
user.setPassword(req.body.password);
user.save(function(err, user) {
if (err)
res.send(err);
res.json({ token: user.generateJWT()});
});
});
router.route('/login')
.post(function(req, res) {
if (!req.body.username || !req.body.password) {
return res.status(400).json({ message: 'Please fill all the fields!' });
};
passport.authenticate('local', function(err, user, info) {
if (err)
res.send(err);
if (user) {
return res.json({ token: user.generateJWT() });
} else {
return res.status(401).json(info);
};
})(req, res);
});
내가 알고 싶은
var UserSchema = new Schema({
username: { type: String, required: true, unique: true },
firstName: { type: String, required: true },
lastName: { type: String, required: true },
email: { type: String, required: true, unique: true, lowercase: true },
phone: { type: Number, min: 10, unique: true },
hash: String,
salt: String
});
var ClassifiedSchema = new Schema({
title: { type: String, required: true, unique: true },
description: { type: String, required: true, },
price: { type: Number, required: true },
created: { type: Date, default: Date.now },
updated: { type: Date, default: null },
contact: {
name: String,
phone: Number,
email: String
},
image: String,
user: { type: mongoose.Schema.Types.ObjectId, ref: 'User' }
});
내 경로는 어떻게 사용자 이름을받을 수 있나요? 채우기 기능을 알고 있지만 시도해 보았지만 작동하지 않는 것 같습니다.
업데이트
내가 당신에게 여권을 사용하는 방법을 보여줍니다 내 등록 및 로그인 경로를 추가했습니다.
내가 req.user에 액세스하려고 할 때마다 항상 정의되지 않은 수를 –
@ fahad.kazi가 로그인 한 사용자입니까? –
예 사용자가 로그인했을 때 분류를 추가하고 req.user를 콘솔에 인쇄 해 보았습니다. 나는 정의되지 않았다. –