Introduction to django
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Introduction to django






Total Views
Views on SlideShare
Embed Views



15 Embeds 5,723 5474 192 18
http://static 15 5 5 3 2 2 2 1 1 1 1 1



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Very helpful for beginners...
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Introduction to django Presentation Transcript

  • 1. Introduction to Django
  • 2. Django"""The Web framework for perfectionists withdeadlines.""""""Django is a high-level Python Webframework that encourages rapid developmentand clean, pragmatic design."""
  • 3. What is inside?● Built-in ORM(Object-relational Mapper)● Simple but powerful URL system● Built-in template system● I10n(Internationalization)● Cache system● Built-in authentication system● Built-in webserver(for development)● Automatic admin interface
  • 4. MVT not MVC● Model ○ defines the data structure ○ takes care for querying the database● View ○ defines what data should be presented ○ returns HTTP response● Template ○ renders the data in suitable format - HTML/XML/etc.
  • 5. The live of request
  • 6. Project structureTo start new project run: startproject my_projectThe following structure will be created my_project/ my_project/ # project settings reside here wsgi.pyThis is the default created and good for learning the basics but this way thesettings may be hard to maintain for project in production. Alternative approachis available at
  • 7. Application structureTo create new application in you project just run the following commandin the shell: python startapp appThe following structure will be created app/ # not created automatically before 1.5 views.pyThere is no file but most developer find it useful to keep the applicationspecific URLs inside it and include them in the main URLs configuration file.
  • 8. Models# models.pyfrom django.db import modelsfrom django.utils.translation import ugettext_lazy as _class News(models.Model): title = models.CharField(_(Title), max_length=255) slug = models.SlugField(_(Slug)) content = models.TextField()To create the tables for the define models just run: python syncdb
  • 9. URLs dispatcher# urls.pyfrom django.conf.urls import patterns, url, includeurlpatterns = patterns(, url(r^$, app.home, name=home), # give the specific URL meaningfulname url(roffers/, include(offers.urls)), # include URLs from another app (r^news/$, news.views.offers), # point to specific view (r^news/(d{4})/$, news.views.year_archive), # pass arg(s) (r^news/(d{4})/(d{2})/$, news.views.month_archive), # pass arg(s) (r^news/(?P<slug>[-w]+)/$, news.views.single_news), # pass named args)● URLs dispatcher uses regular expression● The first match found is called● All arguments are passed as unicode strings
  • 10. Views# views.pyfrom .models import Newsfrom django.shortcuts import get_object_or_404def single_news(request, slug): news = get_object_or_404(News.objects.public(), slug=slug) return render_to_response(news/single_news.html, {news: news})
  • 11. Templates# template.html{% extends my_project/base.html %}<h1>{{ news.title }}</h1><div class="news-content"> {{ news.content|safe }}</div>
  • 12. About Meeng. Ilian Iliev● Web Developer for 9+ years● Python/Django fan for 3+ years●●●