Basics and Overview

Django is a free and open-source web framework, written in Python, which follows the model-view-template (MVT) architectural pattern. It is maintained by the Django Software Foundation (DSF).

Django comes with the following design philosophies -

  • Loosely Coupled : Django aims to make each element of its stack independent of the others.

  • Less Coding : Less code so in turn a quick development.

  • Don't Repeat Yourself (DRY) : Everything should be developed only in exactly one place instead of repeating it again and again.

  • Fast Development : Django's philosophy is to do all it can to facilitate hyper-fast development.

  • Clean Design : Django strictly maintains a clean design throughout its own code and makes it easy to follow best web-development practices.

Advantages of Django

Here are few advantages of using Django which can be listed out here ?

  • Object-Relational Mapping (ORM) Support : Django provides a bridge between the data model and the database engine, and supports a large set of database systems including MySQL, Oracle, Postgres, etc. Django also supports NoSQL database such as MongoDB and google app engine.

  • Multilingual Support : Django supports multilingual websites through its built-in internationalization system to support multiple languages.

  • Framework Support : Django has built-in support for Ajax, RSS, Caching and various other frameworks.

  • Admin GUI : Django provides a nice ready-to-use user interface for administrative activities.

  • Environment for Developers : Django comes with a lightweight web server to facilitate end-to-end application development and testing.

 

MVC Pattern

When talking about applications that provides UI (web or desktop), we usually talk about MVC architecture. And as the name suggests, MVC pattern is based on three components: Model, View, and Controller.

  • Controller. A controller is the heart of the system, it steers everything. For a web framework, this means handling requests and responses, setting up database connections and loading add-ons. For this, Django reads a settings file so that it knows what to load and set up. And Django reads a URL config file that tells it what to do with the incoming requests from browsers.
  • Model. The model layer in Django means the database plus the Python code that directly uses it. It models reality. You capture whatever your website needs in database tables. Django helps you write Python classes (called models) that tie 1:1 to the database tables.
  • View. The view layer is the user interface. Django splits this up in the actual HTML pages and the Python code (called views) that renders them. And it also has an automatic web admin interface for editing the models.

                                                                               


Loading ...

Related Results :

  1. Introduction to Python
  2. Functions in Python
  3. self in python class
  4. Basics and Overview
  5. Create a Django Project
  6. Django Models and Admin
  7. Django Views and Urls
  8. Introduction to Python
  9. Python Loop
  10. Python Math Strings Exception
  11. Strings in Python
  12. Functions in Python
  13. Lists in Python
  14. Dictionaries & Recursive functions in Python
  15. Reading and Writing file in Python
  16. Python OOP (Object Oriented Programming)
  17. Functions , Map , Filter in Python
  18. Iterators , Lists , Expressions in Python
  19. Using Threads in Python
  20. Regular Expressions 1 in Python
  21. Regular Expressions 2 in Python
  22. Regular Expressions 3 in Python
  23. Regular Expressions 4 in Python
  24. Python Sqlite Tutorial
  25. GUI using Tk in Python
  26. GUI using Tk in Python Part 2
  27. Django Template System
  28. Django syndication feed framework
Note :
  • Related Posts are generally User Blog posts.
  • or Other tutorials from other networks of w3clan.com.
  • Any registered user can create related posts based on search term tags.

About the Author

Raj Rastogi

I am Raj Rastogi.

Sunny Arora

I am enthusiast Python and Django Developer.

My skill forte is Python, Django, HTML, Jquery, MySQL, MongoDb, SVN, Git.

Hobbies: Cricket, Adventure