μ μ₯μ μν΄ λ¦° μ΅μ
μ μ¬μ©νκ³ μΆμ΅λλ€.
save μ½λ°±μ λ¦° κ°μ νΈμΆμ μ¬μ©νμ¬ λ³κ²½νλ €λ JS κ°μ²΄κ° μλ λͺ½κ΅¬μ€ λ¬Έμλ λ°νν©λλ€.
쿼리μ λ¦°μ μ¬μ©νκ³ μ μ₯μ μ½λ°± ν¨μμμ toObjectλ₯Ό μ¬μ©νλ κ²μ λμκ² νΌλμ²λΌ 보μ λλ€.
μ΄λ€ μμ΄λμ΄?
λ¦°μ μ¬μ©νμ§ μμΌλ €λ©΄ λ°νλ Mongoose κ°μ²΄μμ μ κ°μ²΄λ₯Ό μμ±νλ κ²μ΄ κ°μ₯ μ’μ΅λλ€.
Person.findOne({
_id: req.user.id
}, function(err, result) {
if (err)
return next(err);
return (200, {
id: result._id,
spouse: result.spouse,
children: result.children
});
});
λ΄ κ²μλ¬Όμ΄ λͺ
ννμ§ μμμ μ μμ΅λλ€. μ£μ‘ν©λλ€.
λ¦°μ μ¬μ©νκ³ μΆμ§λ§ μ μ₯ μμ
μλ μ¬μ©νκ³ μΆμ΅λλ€.
"μ μ₯" λλ "μ
λ°μ΄νΈ"μ κ°μ μ μ₯ ν¨μμ μ½λ°±μ μ€ν€λ§ κ°μ²΄μ ν¨κ» λ°νλλ©° μμ JS κ°μ²΄λ₯Ό κ°κΈ° μν΄ λ¦°μ μ¬μ©ν μ μμ΅λλ€.
μ΄κ²μ λ΄ λ¬Έμ μ
λλ€. μ μ₯ λ° μ
λ°μ΄νΈμλ λ¦°μ μ¬μ©νκ³ μΆμ΅λλ€.
@imrefazekas , Save, Update, Create λ° Removeλ "쿼리"κ° μλλ―λ‘ .lean()
μ§μλ¬Έμ κ·Έλλ‘ μ¬μ©νμ§ μμ΅λλ€.
λ°νλ κ°μ²΄μ .toObject()
λ©μλλ₯Ό μ¬μ©νμ¬ μ€ν€λ§ μμ΄ κ°μ Έμ¬ μ μμ΅λλ€.
p.save(function (err, returned) {
var leanObject = returned.toObject(); // has many options: http://mongoosejs.com/docs/api.html#document_Document-toObject
assert.equal(leanObject.schema, null);
});
ν ν ... save()
μ λ¦° μ΅μ
μ΄ μμ΄μΌ ν©λκΉ?
save()μ leanμ΄ ν¨κ» μΌνλ κ²μ μ΄λ»κ² μμν μ μμ΅λκΉ? λ§μ΄ μ λλ AFAIK.
μ, λ©°μΉ μ΄ μ§λ¬μ§λ§ νμ¬λ μ΄λ μ΅λλ€.
user.save(function(err,user){
//user is full-fledged etc
});
λ¦° μ΅μ μ μ¬μ©νλ©΄
user.save({
lean:true
},function(err,user){
//user is *not* full-fledged etc
});
κ·Έλ μ§ μμ΅λκΉ?
@ORESoftware μλμ. μ μ₯ν μ½λ°±μ λ λ²μ§Έ λ§€κ° λ³μκ° μ νν λμΌν λ¬Έμμ΄κΈ° λλ¬Έμ λλ€. Mongooseλ μλ‘ μ λ°μ΄νΈλ λ¬Έμλ₯Ό λ°μ΄ν°λ² μ΄μ€μ λ¬»μ§ μμ΅λλ€. μλ₯Ό λ€μ΄,
user.save(function(err, _user){
user === _user; // true
});
μ€ μμμ΄ :) λ΄ λμ
κΈ°λ‘μ μν΄ μμμ @repackμ΄ μ 곡ν μ루μ μ 2017λ μλ μ¬μ ν 맀λ ₯μ²λΌ μλν©λλ€.
@peterpeterparker λλ λμνμ§ μμΌλ©° μ΄κ²μ΄ Mongoose μΈμ€ν΄μ€ λμ λͺ¨λ λ°μ΄ν°λ² μ΄μ€ μμ μμ λ°μ΄ν°κ° λ°νλκΈ°λ₯Ό μνλ μ¬μ©μμκ² μ¬μ ν λ¬Έμ λΌκ³ μκ°ν©λλ€.
@alex-dixon μ λ save
μμ
μ λν @repack μ μ루μ
μ΄ 2017λ
μλ μ¬μ ν μ ν¨νκ³ κΈ°λ₯μ μ΄λΌκ³ μ§μ νμ΅λλ€. κ·Έ μ΄μλ κ·Έ μ΄νλ μλλλ€ ;)
@peterpeterparker λ§μ΅λλ€. μ£μ‘ν©λλ€. λΉμ μκ² κ·Έκ²μ μ§μνμ§ λ§μμ΄μΌ νλ€.
@alex-dixon κ±±μ λ§
μ°λ¦¬κ° μ¬μ©νλ€ lean()
μ Model.create()
?
lean()
μ ν¨κ» Model.create()
lean()
λ₯Ό μ¬μ©ν μ μκΈ° λλ¬Έμ μ λλ‘ :p
μμμ΄μ :)
κ°μ₯ μ μ©ν λκΈ
@imrefazekas , Save, Update, Create λ° Removeλ "쿼리"κ° μλλ―λ‘
.lean()
μ§μλ¬Έμ κ·Έλλ‘ μ¬μ©νμ§ μμ΅λλ€.λ°νλ κ°μ²΄μ
.toObject()
λ©μλλ₯Ό μ¬μ©νμ¬ μ€ν€λ§ μμ΄ κ°μ Έμ¬ μ μμ΅λλ€.