Ana içeriğe atla

Django Veritabanı Kurma

Meşe Bilişim Software Testing dersinde öğrendiğimiz Django web çatısı blog yazılarına devam ediyoruz. Bu yazımda oluşturduğumuz web uygulaması için veritabanı kurma işleminden kısaca bahsedeceğim.

(myvenv)  ~/mesebilisimsw/proje/proje 


├── __init__.py

├── settings.py
├── urls.py
└── wsgi.py

Proje dizinimizde settings.py dosyası içerisinde DATABASE alanında web uygulamalarımız için kullanacağımız veritabanını görebiliriz. Django web çatısı varsayılan olarak SQLite veritabanı kullanmaktadır.

Geliştirmekte olduğumuz "blog" uygulaması için biz de SQLite veritabanı kullanacağız. Varsayılan olarak Django bu veritabanını kullandığı için settings.py dosya içeriğinde bir değişiklik yapmamıza gerek yok fakat bu durumun nasıl olduğunu bilmemizde fayda var.

Kısaca SQLite veritabanından bahsetmek gerekirse; açık kaynak kodlu C ve C++ programlama dilleri ile oluşturulmuştur. SQLite kullanımı son derece kolaydır ve bu yönüyle ön plana çıkmaktadır. Platform bağımsız olarak çalışmaktadır.

Konumuza dönecek olursak; settings.py dosyası içerisinde yer alan DATABASE değişkenini inceleyelim.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

Varsayılan olarak SQLite veritabanı kullanıldığını söylemiştik, yukarıda da bu durum doğrulanıyor. Django projelerimizde dilersek; PostgreSQL, MySQL ya da Oracle veritabanlarını da kullanabiliriz.

SQLite dışında bir veritabanı kullanımı, şu aşamada bizim için yüksek maliyetli bir iş olduğundan varsayılanı değiştirmeyeceğiz. Bir veritabanının kurulumu dahi vaktimizi alabilir, hızlıca projemize devam edelim.

"ENGINE" değişkeni ile SQLite'ı (veritabanı paketini)  import ediyoruz. Bu şekilde kullanacağımız database belirlenmiş oluyor.

"NAME" değişkeni ile 'db.sqlite3' yani bir SQLite veritabanı tanımlıyoruz. SQLite için dosya konumunu belirtiyoruz. (SQLite her veritabanı için sadece bir dosya oluşturmaktadır.)

Şayet farklı bir veritabanı kullanmak isteseydik ENGINE değişkenin aldığı değerleri şu şekilde değiştirmemiz gerekirdi;

MySQL => django.db.backends.mysql
Oracle => django.db.backends.oracle
PostgreSQL => django.db.backends.postgresql_psycopg2

Veritabanı ile ilgili daha fazla değişken ve detaylı anlatım bu yazının hedefi olmadığı için ayrıntıları yazıya dahil etmeyeceğim. Django ile proje geliştirirken daha fazlasını bilmek isteyenler https://docs.djangoproject.com/en/1.9/ref/databases/ adresine göz atabilirler.

Eksik yada hatalı bir anlatım mevcut ise lütfen yorum bölümünde paylaşarak katkıda bulununuz.


Yorumlar

Bu blogdaki popüler yayınlar

Meşe Bilişim Software Testing Dersi

Manisa Celal Bayar Üniversitesi Bilgisayar Mühendisliği Bölümü ile bazı özel ve kamu kurumları ortaklığında gerçekleştirilen Software Testing Dersi dahilinde bugün Meşe Bilişim şirketinde şirket kurucusu Şahin Mersin ile ilk dersimizi gerçekleştirdik.

Üniversitenin Bilgisayar Mühendisliği bölümünde okuyan 3 veya 4'üncü sınıf öğrencileri tarafından tercih edilebilen Software Testing dersi intörn eğitim modelini temelinde barındıran bir ders ve bence öğrenciler için müthiş bir fırsat.

Manisa Teknokent içerisinde yer alan Meşe Bilişim şirketinde bir dönem süresince Software Testing dersini almaya devam edeceğiz. Şirket benimle birlikte 10 kişilik bir öğrenci kadrosuna bu dönem ev sahipliği yapacak.

Dersin ilk gününde Meşe Bilişim şirket kurucusu Şahin Mersin, biz öğrencilerine dönem süresince ders dahilinde yapacaklarımızdan bahsetti. Yaklaşık 5 farklı projeden söz eden Şahin Bey'in açık kaynaklı projelere katkıda bulunmak hedefi açıkcası beni etkiledi. Bu doğrultuda, ürettiğimiz…

Mqtt Nedir?

Message Queuing Telemetry Transport (MQTT) kelimelerinin baş harfleri ile tanıdığımız bu teknoloji mesajın karşı tarafa ulaştırılması için kullanılan haberleşme protokolüdür.  Haberleşme için mesaj yayınlayan, mesaja abone olan ve mesaj trafiğini kontrol eden yöneticiden oluşmaktadır. Mesaj trafiğini kontrol eden yöneticiye BROKER, mesaj yayınına PUBLISH ve aboneye SUBSCRIBE denir. Mesaj alışverişi publisher dan subscriber lara doğru yani yayıncılardan abonelere doğru olmaktadır. MQTT de asenkron haberleşme protokolü kullanılmaktadır. Mesaj yayıncıları ve mesaj alıcılar arasında eşzamansız olarak veri taşınmaktadır. Diğer haberleşme yapılarına göre basit oluşu ve minimum kaynak tüketmesi sebebiyle “machine-to-machine” (M2M)  makineden makineye veri iletiminde ve (IOT) “Internet of Things” İnternete bağlı nesnelerin mesajlaşmasında tercih edilmektedir.   MQTT IBM de çalışan Dr Andy Stanford-Clark ve Arcom da çalışan Arlen Nipper (şu an Eurotech) tarafından 1999 yılında oluşturulmuştur…

Meşe Bilişim Logolar