반응형
mongoose로 문서를 업데이트하고 저장하는 방법을 만드시겠습니까?
공식 문서를 확인한 후에도 다음에서 사용할 수 있는 방법을 만드는 방법에 대해 잘 모르겠습니다.mongoose문서를 만들고 업데이트합니다.
어떻게 하면 좋을까요?
저는 다음과 같은 것을 염두에 두고 있습니다.
mySchema.statics.insertSomething = function insertSomething () {
return this.insert(() ?
}
정적 메서드 내부에서 다음을 수행하여 새 문서를 작성할 수도 있습니다.
schema.statics.createUser = function(callback) {
var user = new this();
user.phone_number = "jgkdlajgkldas";
user.save(callback);
};
메소드는 모델의 현재 인스턴스와 상호 작용하는 데 사용됩니다.예:
var AnimalSchema = new Schema({
name: String
, type: String
});
// we want to use this on an instance of Animal
AnimalSchema.methods.findSimilarType = function findSimilarType (cb) {
return this.find({ type: this.type }, cb);
};
var Animal = mongoose.model('Animal', AnimalSchema);
var dog = new Animal({ name: 'Rover', type: 'dog' });
// dog is an instance of Animal
dog.findSimilarType(function (err, dogs) {
if (err) return ...
dogs.forEach(..);
})
정적은 인스턴스와 상호 작용하지 않고 모델 관련 작업을 수행하려는 경우에 사용됩니다(예: 'Rover'라는 이름의 모든 동물 검색).
모델의 인스턴스(DB)를 삽입/업데이트하려면methods가는 길입니다.저장/업데이트가 필요한 경우 다음을 사용할 수 있습니다.save함수(Mongoose에 이미 존재함).예:
var Animal = mongoose.model('Animal', AnimalSchema);
var dog = new Animal({ name: 'Rover', type: 'dog' });
dog.save(function(err) {
// we've saved the dog into the db here
if (err) throw err;
dog.name = "Spike";
dog.save(function(err) {
// we've updated the dog into the db here
if (err) throw err;
});
});
.save()를 호출하는 함수를 만들 필요는 없다고 생각합니다.모델이 저장되기 전에 수행해야 하는 작업은 .pre()를 사용하여 수행할 수 있습니다.
모델이 생성 중인지 업데이트 중인지 확인하려면 이 항목을 확인하십시오.isNew()
언급URL : https://stackoverflow.com/questions/8987851/creating-methods-to-update-save-documents-with-mongoose
반응형
'programing' 카테고리의 다른 글
| 업데이트 대 교체의 Mongod 의미 (0) | 2023.06.22 |
|---|---|
| mongoDb 연결 문자열에서 "+srv"의 의미 (0) | 2023.06.22 |
| j개체에 등록된 이벤트 핸들러 찾기 (0) | 2023.06.22 |
| SQL Server : 식을 데이터 형식 int로 변환하는 동안 산술 오버플로 오류가 발생했습니다. (0) | 2023.06.22 |
| SQL Server의 모든 데이터베이스에 있는 모든 테이블을 단일 결과 집합으로 나열하려면 어떻게 해야 합니까? (0) | 2023.06.22 |