안녕하세요, API에 데이터를 가져 오는 데 문제가 있습니다. 여기에있는 항목은 입니다. 항목 배열을 저장하려고합니다. 들어오는 제품의 목록, 그래서 API를 테스트하고있어 내 라우터의 논리와 몇 가지 오류가있어, 내가 게시물을 통해 항목을 보내고, 모두 같은 키지만, 다른 가치와 함께, 콘솔은 그것을 인쇄합니다 방법이 필요하지만 배열에 넣으려고 할 때 또는 심지어 하나를 얻으려고하면 오류가 발생합니다. 내가 모든 항목의 목록을 갖고 싶어하기 때문에 나는 소득 스키마이 방법을 선택값이 목록/배열 인 경우 익스프레스 라우터에서 값 검색
var itemsIncomeSchema = new Schema({
user: {type: schemaTypes.ObjectId, ref: 'User'},
sender: String,
created_at: {type: Date, default: Date.now()},
items: [Item]
}) mongoose.model('ItemIncome', itemsIncomeSchema);
: 수입 모델 여기
var itemSchema = = new mongoose.Schema({
name: String,
details: String,
quantity: SchemaTypes.Double,
created_at: {type: Date, default: Date.now},
last_updated: {type: Date, default: Date.now}
}) mongoose.model('Item', itemSchema);
것 : 여기
이 항목에 대한 모델의 하지만 나는 내가 심판을 사용하고 싶지 않았어 들어오는 것들의 레지스트리를 갖고 싶습니다. (많은 많은 같은)어쨌든 문제는 여기에 내가 API를 통해 모델을 테스트있을 때, 나는이 게시물에 같은 값을 보내고있다 :
sender=sender_name&items=57b694c626a4741c2f4bf6fd&items=57b694c626a4741c2f4bffff ...
을하고 게시물에 방법을 내 라우터에 내가 완벽하게 데이터를 받고 있어요, 심지어 콘솔에 인쇄하지만 항목을 배열 또는 항목에서 데이터를 검색하는 방법을 잘 모르겠다 왜냐하면 나는 _id의 내가 보내는거야 봐야하기 때문에 확실하지 않으면 나는 그들을 제대로 보내고 있는지 모르겠다. 나는 단지 _id를 건네지 않을지, 아니면 전체 아이템을 전달할 것인가. ItemEntry 무엇
.post(function(req, res){
var entry = new itemEntry();
var user = req.user;
//var items= req.body.items; <<tried like this but no success
console.log('items: '+req.body.items)
for (var item in req.body.items) {
console.log('item: '+item); //it prints item: 0...23 also tried with a toString
}
entry.user = user._id;
entry.items= items;
entry.save(function(err, entry){
if(err)
return res.send(500, err);
return res.json(entry);
});
})
당신의 질의에는'items'이 있지만'req.body.products'?를 사용하고 있습니까?. 데이터가 어떻게 전송되는지는 분명하지 않습니다. 당신이 얻는 것을보기 위해서'console.log (req.body)'를 시도해보십시오. – cyberwombat
죄송합니다. 오타가 있습니다.이 항목은 {{items : [ '57b694c626a4741c2f4bf6fd', '57b694c626a4741c2f4bf6ff']}을 반환합니다. 보내시는 ID는 – Driff