Node.js MongoDB Veri Listeleme İşlemi
Hepinize merhaba dostlarım 😊. Bu yazımda sizlere daha öncesinde anlatmaya başladığım konu olan ve sizin de çok ama çok sevdiğinizi düşündüğüm bir konu olan Node.js MongoDB İşlemleri konularına kaldığımız yerden devam edeceğiz 😊. Daha önceki konumuzda Node.js MongoDB Veri Ekleme İşlemini (okumayan dostlarım varsa buradan ulaşabilirler 😊) gerçekleştirmiştik. Şimdi ise bu konumuzda eklediğimiz verilerin ekrana bastırılma işlemlerinden bahsedeceğim 😊. Öncelikle dostlarım daha önceki konumuzda kullandığımız veri tabanımızı açalım ve içerisine kayıtları ekleyelim. Ben örnek olarak 3 4 kayıt ekleyeceğim
şeklinde 4 adet kayıt ekledim dostlarım 😊. Şimdi ise kodlarımızı yavaştan yavaştan yazmaya başlayalım 😊. Öncelikle proje kök dizinimize user.js isimli bir dosya oluşturalım. Bu dosyamızın amacı ise kullanıcılar üzerinde işlem yapmaya (daha önceki yazımda olan ekleme işleminde nasıl user.js isimli bir dosyamız olmuşsa veri çekme işleminde de bize yardımcı olacak user.js dosyasına ihtiyacımız vardır 😊). Şimdi gelelim sözümüzü daha fazla uzatmadan user.js dosyamızı oluşturalım. Bu dosyamıza gelelim ve aşağıdaki kodlarımızı yazalım
var mongoose = require('mongoose') // mongoose modülümüzü yükleyelim
mongoose.connect("mongodb://127.0.0.1:27017/mongoose-nodejs",{useMongoClient : true},function (err,db){ // bağlantımızı oluşturalım
if (err) throw err; // hata varsa bu hatayı fırlat dedik
});
var Schema = mongoose.Schema; // mongoose modülümüzün içerisindeki şema dan bir instance alalım
var UserSchema = new Schema({ // yeni bir şema oluşturalım
name : String, // isim kolonunun özelliğini yazalım
surname : String // soyisim kolonunun özelliğini yazalım
})
var User = mongoose.model("User",UserSchema) // şemamızı oluşturalım
module.exports = {
User // daha sonra bu şemamızı diğer modüllerde de kullanacağımız için export edelim
}
şeklinde kodlarımızı yazdık. Biraz karmaşık gelmiş ise burası önceki yazım olan Node.js MongoDB Veri Ekleme başlıklı yazımdan (linki buraya bıraktım) ulaşabilirsiniz 😊. Bu user.js kısmını yazdığımıza göre şimdi ise gelelim proje kök dizinimize ve bir index.js dosyası oluşturalım. Daha sonra ise bu dosyamızı açalım ve aşağıdaki şekildeki gibi kodlarımızı yazalım
var User = require('./user') // user modülümüzü dahil ettik
var mongoose = require('mongoose') // mongoose modülümüzü dahil ettik
var db = mongoose.connection // mongoose modülümüzün içerisinden connection özelliğini instance alalım ve bunu bir değişkene aktaralım
db.once("open",function (err,db){ // db bağlantısını kullanalım
if (err) throw err // herhangi bir hata varsa bu hatayı ekrana fırlatalım
User.User.find({},function (err,res){ // verilerimizi alalım
if (err) throw err // herhangi bir hata varsa ekrana bu hatayı fırlat dedik
res.forEach(function (item,index){ // bize bir dizi döneceği için bunu foreach ile döndürelim
console.log((index+1)+". "+item.name+" "+item.surname) // gelen her veriyi console.log() ile ekranımıza bastıralım
})
})
})
şeklinde kodlarımızı yazdık. Burada süreç nasıl işledi ekleme işleminden farkı nedir diye bakacak olursak hemen özetleyeyim 😊
- User modülümüzü dosyamıza dahil ettik
- Mongoose modülümüzü dosyamıza dahil ettik
- Mongoose modülümüzün connection özelliğini instance alalım ve bunu db değişkenine aktaralım
- once methodu ile bağlantıyı açalım ve bir callback fonksiyonumuzu yazalım. Buraya err(error) ve res(response) olarak iki parametre atayalım. Eğet bir hata varsa (err) bunu yakalayıp ekrana bastıralım
- Daha sonra User modülümüzün içerisindeki tüm verileri almak için find() komutumuzu kullanalım. Dikkat etmişseniz içerisine 2 adet parametre alır. Birincisi obje ikincisi de callback fonksiyon dur 😊. Burada obje içerisine bir değer aktarırsak bunu where şartı olarak algılayacaktır 😊. Biz verilerin hepsini herhangi bir şart olmaksızın getirmek için boş bırakacağız.
- Bir önceki adımda bahsettiğimiz parametrelerden ikincisi olan callback fonksiyon içerisinde de iki adet methodumuzu err(error) ve res(response) olarak yazalım 😊.
- Herhangi bir hata olursa bunu yakalama işlemimizi yazdık
- En son adımda herhangi bir olumsuzlukla karşılaşmamışsak res(response) sonucunu forEach ile gelen dizi içeriğini console.log() ile ekranımıza yazdırdık
işlemlerimiz bu kadar 😊. Şimdi ise artık kodlarımızı test edelim çalışıyor mu çalışmıyor mu 😉. Hemen proje kök dizinimize gelip terminalimizi açalım ve
node index.js
komutumuzu yazalım ve enter tuşuna basalım. Ekran çıktımız ise
1. MFSoftware Blog
2. Zafer Yıldız
3. Emrullah Tanıma
4. Didem Küçükkaraaslan
şeklinde kayıtlarımız listelenecektir 😊💯. İşlemlerimiz bu kadar basit dostlarım çok zor bir yanı yok 😊. Kodlarımız da sorunsuz çalışıyor 😊.
Eveeeet dostlarım 😊. Bu yazımda sizlere daha önce anlatmış olduğum Node.js üzerinde MongoDB kullanarak veri ekleme işleminden sonra verileri listeleme işleminden elimden geldiğince bahsettim. Umarım faydalı olmuşumdur 😊. Eksik veya hatalı bir anlatım yapmış isem benimle iletişime geçmekten çekinmeyin 😊. Başlarda biraz karmaşık veya zor gelebilir dostlarım anlıyorum sizi. Bu aşamada yapmanız gereken şey her yazımda da dediğim gibi "İstikrarlı ve Azimli Olmalısınız, Bolca Pratik Yapmalısınız 😊". Bu dediklerimi hayat felsefeniz yaptığınız sürece başarı sizler için kaçınılmaz olacaktır 😊
Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim 😊
Yazar Hakkında
Kendi Halinde Bir Backend Developer