Django documentation initiation

 What is Django?

Django is an open source python framework dedicated to web 2.0 development. Django's designers gave him the slogan "The web framework for perfectionists under pressure". It is thus clearly oriented for the developers having as need to produce a solid project quickly and without surprise ... that is to say to all the developers!

Since it is always difficult to start from scratch, Django offers you a solid project base. Django is a beautiful toolbox that helps and directs the developer in the construction of his projects.

For the story Django was born in 2003 and was released under a BSD license in July 2005.

 Why work with the Django framework?

If you are a python fan it is already a good reason to be interested in Django. Many developers are much more productive on python than on any other language. he technology behind this framework may be a good reason, but Django is a reason in itself. Everything is basic. No need to reinvent the wheel for every web project: the basics are already there. It will provide you with the necessary tools to secure your application, manage the structure of your models with an ORM, etc. You just have to focus on the business code, focus on the essence of your project and nothing else.

Django structure

Django is inspired by the MVC model (let's say MVT), that is to say that the structure of the framework separates the data (models) which are separated from the processes (controller) which are themselves separated from the view (view / template). You have to code well, a structure must be respected and this can only be profitable for collaborative work or simply the coherence / communication between different projects.

The basic template engine is the simplest I've come across, effective yet flexible and easy to handle. A router allows you to redirect actions to URL functions and an API can provide information about your project without passing through the SQL box. Besides, the included ORM will keep you away from any SQL request.

Each Django project lets you launch your own web server and do just about anything you want in a test environment.

One of the most intelligent concepts of Django is to propose an admin space made in his contrib. Once you have created your templates (the structure of your project), you have access to a CRUD web interface in minutes it's really impressive.

You can obviously customize this admin area or create your own templates and your own forms. Django will offer tools to secure the data or display errors if needed.

Ideal for a collaborative project

A new developer who integrates a Django project is operational immediately. On the one hand by the installation and configuration of its development environment but also by the fact that all Django projects have the same structure, it will never lose time to find a function or include a programming mechanism. It is also very interesting this homogeneity of structure for data exchanges between several Django projects.

 Compatible with the technologies we like

Do you like working with Grunt, Coffeescript, Sass / Compass, AngularJS? No problem, it's compatible! And it is even advisable to work with!

Ancillary projects

Django is at the center of a lot of attention. Being very popular with web developers, ambitious projects like Django Rest Framework (or DRF) have naturally appeared and propose to turn your projects into real war machines!

 Official documentation very educational

We also like in Django its great popularity, so that there are many tutorials and the official documentation is also very well done.

 Who uses Django?

Django is also popular with big companies such as Pinterest, Instagram, Liberation, 20 minutes, Mozilla, etc.

 Conclusion

In summary, why choose Django: