MongoDB-Django

Murat Vuranok
BilgeAdam Teknoloji
4 min readDec 6, 2019

Merhabalar, bu yazımızda mongodb cloud (atlas) kullanarak django üzerinden database ve koleksiyon oluşturma işlemlerine ve django içerisine mongodb entegrasyonuna bakacağız.

MongoDB Atlas, MongoDB tarafından sunulan resmi bulut veritabanı servisidir. Local olarak MongoDB üzerinden’ de çalışabilirsiniz ama, eğer kurulum yapmadıysanız Atlas üzerinden bu İşlemleri yapmak daha kolay olacaktır.

Öncelikle bu İşlemleri yapabilmek için bir hesap oluşturmanız gerekecektir. cloud adresinden kayıt olmanız gerekmektedir.

Bu adımda, kullanıcı kayıt işlemlerini tamamladıktan sonra altta yer alan bölüme geçmeniz gerekmektedir.

Bu alanda FREE olan bölümü seçerek bize sunulan ücretsiz alan üzerinde işlemlerimizi yapabiliriz.

Yukarıdaki alanda, hangi servis sağlayıcısı üzerinde çalışacağımız ve oluşturduğumuz yapının hangi bölgede yer alması gerektiğini seçiyoruz. Bu alanda herhangi bir değişiklik yapmadan devam ediyorum.

İsteğe bağlı olarak siz farklı bir seçenek değerlendirebilirsiniz.

Bu bölümde ise, Bize sunulan ücretsiz alanda sunulan hizmet detayları yer almaktadır. Toplamda kullanbileceğimiz 512 mb bir alan yer almaktadır. Bu alan üzerinde 100 Database, 500 Tablo (Collection) oluşturabilirsiniz.

Bu bölümde, Backup (yedekleme) yapılıp yapılmaması işlemini seçmeniz gerekmektedir. Bu alanda değişiklik yapmadan devam ediyorum ( isteğe bağlı olarak değiştirebilirsiniz)

Oluşturacağınız Database (Cluster) için isim verebilirsiniz. Default olarak 0 değerinden başlayarak sıra numarası ile isimlendirme yapmaktadır.

Bu İşlemleri tamamladıktan sonra, altta yer alan Create butonuna tıklayarak işlemi bitirebilirsiniz.

Kayıt işlemi bittikten sonra bizi control paneline yönlendirmektedir.

Bu alan içerisinde birden fazla Cluster (Name instance) ekleyebilirsiniz ve yeni DataBase’ler ekleyerek yönetebilirsiniz.

İlk olarak Database Access sekmesinden yeni bir user oluşturalım.

Bu işlemden sonra, Cluster’a bağlanacak olan uygulamanın IP numarasının tanımlanması gerekmektedir.

Network Access sekmesinden açılan ekran üzerinde ADD IP ADDRESS butonuna tıklayarak yeni bir adres eklemeniz gerekmektedir.

Yukarıda yer alan ekranda 2 adet seçenek sunulmaktadır. ADD CURRENT IP ADDRESS butonuna tıklarsanız çıkış yaptığınız IP adresi yer alacaktır. ALLOW ACCESS FROM ANYWHERE butonuna tıklarsanız tüm IP adreslerinden ulaşabilirsiniz.

Confirm butonuna tıkladıktan sonra, uygulama üzerinden nasıl ulaşacağımız bölümüne bakalım. Bu örnekte Django üzerinden bağlanarak Database be Tablo (Collection) oluşturma işlemi yapacağız.

Django projenizin settings.py içerisindeki databases bölümünü alttaki gibi düzenleyiniz.

Bu işlem için projenize djongo kurmanız gerekecektir. Son olarak bu alana Connection String değerinizi eklemeniz gerekmektedir. Bunun için, Clusters butonuna tıklayıp açılan ekran üzerinde CONNECT butonuna tıklayınız.

Bu alandan Connect Your Application alanına tıklayarak, DRIVER bölümünden Python, Version 3.6 (son versiyon) seçiniz.

İşlemler bittiğinde Copy butonu ile Connection String değerinizi settings.py içerisinde ilgili alana ekleyiniz.

Daha sonrasında eklediğiniz app içerisinde yer alan models.py içerisini aşşağıdaki gibi düzenleyiniz

Düzenlemeler bittikten sonra, Consol — Terminal ekranına

Python manage.py migrate

Python manage.py makemigrations

Kodlarını çalıştırınız ve veri tabanının oluşmasını sağlayınız. İşlem sonrasında aşağıdaki gibi bir çıktı olması gerekmektedir.

Artık mongodb cloud(atlas) üzerinde çalışan bir django projemiz mevcut. Default olarak sqlite olarak sunulan django uygulamanızı farklı database yapıları ile haberleştirerek kullanabilirsiniz.

--

--