Book Image

Mastering Django: Core

By : Nigel George
Book Image

Mastering Django: Core

By: Nigel George

Overview of this book

Mastering Django: Core is a completely revised and updated version of the original Django Book, written by Adrian Holovaty and Jacob Kaplan-Moss - the creators of Django. The main goal of this book is to make you a Django expert. By reading this book, you’ll learn the skills needed to develop powerful websites quickly, with code that is clean and easy to maintain. This book is also a programmer’s manual that provides complete coverage of the current Long Term Support (LTS) version of Django. For developers creating applications for commercial and business critical deployments, Mastering Django: Core provides a complete, up-to-date resource for Django 1.8LTS with a stable code-base, security fixes and support out to 2018.
Table of Contents (33 chapters)
Mastering Django: Core
Credits
About the Author
www.PacktPub.com
Preface
Free Chapter
1
Introduction to Django and Getting Started

Philosophies and limitations


Now that you've gotten a feel for the Django Template Language(DTL), it is probably time to explain the basic design philosophy behind the DTL. First and foremost, the limitations to the DTL are intentional.

Django was developed in the high volume, ever-changing environment of an online newsroom. The original creators of Django had a very definite set of philosophies in creating the DTL.

These philosophies remain core to Django today. They are:

  1. Separate logic from presentation

  2. Discourage redundancy

  3. Be decoupled from HTML

  4. XML is bad

  5. Assume designer competence

  6. Treat whitespace obviously

  7. Don't invent a programming language

  8. Ensure safety and security

  9. Extensible

Following is the explanation for this:

  1.  Separate logic from presentation

    A template system is a tool that controls presentation and presentation-related logic-and that's it. The template system shouldn't support functionality that goes beyond this basic goal.

  2. Discourage redundancy

    The majority of dynamic websites use...