0
잘못된 방법 :몽구스 분류 번호 나는 몽구스의 간단한 스키마가
var ShotSchema = new mongoose.Schema({
code: Number,
active: Boolean
});
이 정적 기능을 실행 한 후 코드 번호를 사용하여 쿼리 정렬 :
findShotMax: function(seq, cb) {
this.find({sequence: seq})
.sort('code')
// .limit(1)
.exec(cb);
}
을 나는 이상한 방법으로 정렬 샷을 얻을 :
10,
100,
110,
120,
140,
20,
30,
40,
....
정상적인 방법으로 주문을 수정하려면 어떻게해야하나요?
해당 스키마를 사용하여 모든 문서를 데이터베이스에 저장 했습니까? 아니면 해당 데이터가 이미 컬렉션에 있습니까? 숫자 대신 문자열로 저장됩니다. – robertklep
정확합니다. 이전에 문자열 값으로 저장되었습니다. 그게 문제를 일으키고 있습니까? 유형 변환을 수행해야합니까? –
예, 문제의 원인입니다. 데이터베이스의 데이터를 문자열에서 숫자로 변환해야합니다 (Mongoose는 정렬과 관련이 거의 없으며 MongoDB 서버 내부에서 수행됩니다). – robertklep