Nedir ?
Nedir ?
Framework Nedir ?
Neden Django ?
• Open Source• Nesne yönelimli ( OOP )• Temiz kod• Öğrenmesi Kolay• Hızlı
Kimler Django Kullanıyor
Özellikleri
• Dökümantasyon• Şık URL yapısı• Template Dizayn• Çoklu Dil Desteği• MTV mimarisi• Cache• Form
Yapıproje_adi/
manage.py proje_adi/
__init__.py settings.py urls.py wsgi.pyapp/
__init__.py models.py tests.py views.py
Bileşenler
• Models - models.py• Templates - html dosyaları• Views - views.py• Url Patterns – urls.py
Models.py
from django.db import models
class Anket(models.Model):soru = models.CharField(max_length=200) tarih = models.DateTimeField('date published')
class Secim(models.Model): anket = models.ForeignKey(Anket) secilen_yazi = models.CharField(max_length=200) puan = models.IntegerField(default=0)
ORM>>> from app.models import Anket, Secim>>> Anket.objects.all() [] >>> from django.utils import timezone>>> p = Anket(soru="Nasılsın?", tarih=timezone.now()) >>> p.save() >>> p.id 1>>> p.soru "Nasılsın?" >>> p.tarih datetime.datetime(2012, 2, 26, 13, 0, 0, 775217, tzinfo=<UTC>)>>> p.soru = "Nasıl Gidiyor?" >>> p. save()
Urls.py
from django.conf.urls import patterns, include, url
urlpatterns = patterns('', url(r'^$', ‘views.index’),url(r'^anketler/$', ‘views.anketler’),)
# example.com/# example.com/anketler/
Views.py
from django.shortcuts import render from app.models import Anket
def index(request): x = Anket.objects.all().order_by('-tarih')[:5]
degerler = {'anketler': x}
return render(request, 'index.html', degerler)
Templates
<html><body>
{% if anketler %} <ul> {% for anket in anketler %} <li>{{ anket.soru }} </li> {% endfor %} </ul>
{% else %} <p>Anket Bulunamadı.</p>
{% endif %}
</body></html>
Yararlı Linkler
• https://docs.djangoproject.com/• http://www.djangobook.com/ • http://stackoverflow.com/• http://djangoforum.com/
• http://freedjangohosting.com/