Category: 1. Tutorial

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTN5AsIHtK-fOeTNl-0vUnrmfPA2cRABw4Y24TrnparUSODoZK3e1ouYuozuwRwQLmwJcQ

  • Basics

    Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. Django makes it easier to build better web apps quickly and with less code.

    Note − Django is a registered trademark of the Django Software Foundation, and is licensed under BSD License.

    History of Django

    • 2003 − Started by Adrian Holovaty and Simon Willison as an internal project at the Lawrence Journal-World newspaper.
    • 2005 − Released July 2005 and named it Django, after the jazz guitarist Django Reinhardt.
    • 2005 − Mature enough to handle several high-traffic sites.
    • Current − Django is now an open source project with contributors across the world.

    Django – Design Philosophies

    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 through Django-nonrel fork. For now, the only NoSQL databases supported are MongoDB and google app engine.
    • Multilingual Support − Django supports multilingual websites through its built-in internationalization system. So you can develop your website, which would support multiple languages.
    • Framework Support − Django has built-in support for Ajax, RSS, Caching and various other frameworks.
    • Administration GUI − Django provides a nice ready-to-use user interface for administrative activities.
    • Development Environment − Django comes with a lightweight web server to facilitate end-to-end application development and testing.