Kirli bir pervane 'temiz' değeri böyle bir ön-kaydetme firavunfaresi kanca içinde ne olduğunu bilmek istiyorum kanca önceden kurtarmak db'ye bakmadan eski değer mi? Yani önceden kaydetmek kanca içindefiravunfaresi olsun db değeri
cevap
, ben this section of the source code okuyarak söyleyebilirim gelen, önceki değer herhangi bir yerde saklanır sanmıyorum. Bu yüzden belgeyi almak için belgeyi mongodb'den yüklemeniz gerekecek. Bununla birlikte, eski değeri yeni değere değiştirmeden önce saklamak için ön kaydetme kancası yerine virtuals
mekanizmasını kullanmak isteyebilirsiniz.
var virtual = schema.virtual('password');
virtual.set(function (v) {
var this._oldPassword = this.password;
return v;
});
Bu satırlardaki bir şeyle deneyin ve bir şeyin uygun şekilde çalışıp çalışmadığını görün. Varsayılan olarak
, eski değerler saklanmaz. Yapmanız gereken eski bir gönderiyi bir init kancayla (bir mongoose özelliği) takip etmektir.
Yapmamız MongoDB çekilmiş tüm öğelere orijinal belgenin kopyasını ekleyin olduğunu. Biz karşılaştırma için önceden kirli veri almak için gereken her şema için bu kodu vardır:
schema.post('init', function() {
this._original = this.toObject();
});
NodeJS oldukça verimlidir ve mümkün olduğunda size sürece çift bellek tüketimini görmüyorum böylece, yazma üzerine kopyalama yok tüm belgeyi değiştir. Ancak o zaman, aslında, gerçekte belleği iki katına çıkarır.
- 1. olsun değeri dinamik olarak
- 2. ek açıklama değeri olsun?
- 3. olsun üst öğe öznitelik değeri
- 4. Referans dokümanlar firavunfaresi
- 5. firavunfaresi: belirli alanlar
- 6. Yabancı anahtar firavunfaresi
- 7. JavaScript olsun özel düğmenin metin değeri
- 8. ASP.NET MVC açılır liste değeri olsun
- 9. jQuery aria genişletilmiş öznitelik değeri olsun
- 10. Python dict değeri en hızlı şekilde olsun
- 11. firavunfaresi basıp kısmi /, node.js ise
- 12. Postgresql Ben olsun veritabanını bırakma çalıştığınızda zaman çünkü DB
- 13. Nasıl bu firavunfaresi şema var bir koşulu
- 14. django - db sqlite3 db dönüştürürken loaddata hatası
- 15. DB
- 16. DB
- 17. DB
- 18. Cant olsun Dize değeri (açısal2/typescript) Gözden geçirilebilir
- 19. Grails groovy cümlede kimliği ile alan değeri olsun
- 20. php - bir açılan seçicide varsayılan değeri belirle db
- 21. Bir OLE DB Komutu'nda Saklı Yordam'ın SSIS dönüş değeri
- 22. raylar etkinleştirme bildirimleri - Yanlış db Çalışma zamanı değeri
- 23. Firebase DB - Firebase Veritabanındaki çocuğun belirli bir değeri nasıl güncellenir
- 24. xsl değişkeninden xpath olsun
- 25. Spring Boot'da DB DB Hazırda bekletme Db Schema
- 26. firavunfaresi şema çoklu ref Bu nasıl (ama yanlış) gibi tek firavunfaresi şemanın bir özellik için çok ref yazmaya
- 27. olsun çift
- 28. hata olsun?
- 29. olsun yüksekliği
- 30. olsun GIT
neden ben 'path' vs bir' virtual' kullanmak önerirsin? 'Path' sadece adı ve bir veri özelliği türünü tanımlar – mkoryak
için virtual'' oysa kodu koymak, alma/ayarlama yöntemleri vasıtasıyla erişilen bir özellik için imkan sağlar. –
eski iplik diriltmeyi için üzgünüm @PeterLyons, Ama yük dengeleyici konuşlandırılmış çoklu düğüm sunucuları varsa bu yaklaşım doğru çalışmaz düşünüyorum? – Saurabh